标签:Action

Spring

Spring注解 TX声明式事务实现过程解析

5

xiaoli.he 发布于 2020-04-03

环境搭建导入 maven依赖 <!--spring提供的数据库操作工具--> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-...

阅读(8)评论(0)赞 (0)

Java

攻击Java中的JNDI、RMI、LDAP(二)

4

wenming.gapo 发布于 2020-04-03

上文我简述了JNDI,本文我将演示如何攻击JNDI。 JNDI注入 这个东西是BlackHat 2016(USA)的一个议题 “A Journey From JNDI LDAP Manipulation To RCE” 提出的。他的攻击步骤可以概括为以下几步: 服务端实例化JND...

阅读(6)评论(0)赞 (0)

Java

Java 代理模式

7

songhua.gao 发布于 2020-04-03

被问到了,就补一下。 简述代理模式 代理是英文(Proxy)翻译过来的,在我们的实际生活中,最常见的代理模式应该是朋友圈中的微商了。在起初的时候,厂商直接对标顾客,没有微商在中间赚差价,结构就是如图。 之后慢慢的微商汇总了优质资源,顾客没必要自己去挑厂商货比三家,只需要从微商那里...

阅读(6)评论(0)赞 (0)

Java

so easy!松哥手把手带你撸一个 Redis 的 Java 客户端

2

尖兵 发布于 2020-04-03

今日干货 刚刚发表 查看: 66666 回复:666 公众号后台回复 ssm,免费获取松哥纯手敲的 SSM 框架学习干货。 其实今天是想和小伙伴们聊一下 Redis 的通信协议 RESP。在搞懂这个通信协议的基础上,松哥手把手带领大家做一个简易的 Redis Java 客户端。 ...

阅读(7)评论(0)赞 (0)

Spring

6. 基于Spring Data的领域事件发布

1

hellas 发布于 2020-04-02

领域事件发布是一个领域对象为了让其它对象知道自己已经处理完成某个操作时发出的一个通知,事件发布力求从代码层面让自身对象与外部对象解耦,并减少技术代码入侵。 一、 手动发布事件 // 实体定义 @Entity public class Department implements S...

阅读(20)评论(0)赞 (0)

Java

Rxjava(3) 线程切换 – Schedulers.io()

2

xiaoli.he 发布于 2020-04-02

observable的.subscribeOn(Schedulers.io())方法是指定处理的事件流在哪个线程中执行 Schedulers:对外提供获取的方法 IOTask:统一task的创建方式 Scheduler:统一调用的api,IoScheduler/Computati...

阅读(13)评论(0)赞 (0)

Java

深入理解ServiceLoader类与SPI机制

3

zhuangli 发布于 2020-04-02

最近我们自己在重构项目,系统为了符合82原则(希望是80%的业务能通过穷举的方式固定下来,只有20%的允许特殊的定义),那么在固定一些标准流程以后,比如我们放大了原子服务的能力,当放大原子服务能力的时候,你就会发现,虽然抽象上看做的事情是一个意思,但是到实际去实现的时候发现还是各...

阅读(13)评论(0)赞 (0)

Java

Java线程池实现原理及其在美团业务中的实践

30

小丁 发布于 2020-04-02

随着计算机行业的飞速发展,摩尔定律逐渐失效,多核CPU成为主流。使用多线程并行计算逐渐成为开发人员提升服务器性能的基本武器。J.U.C提供的线程池:ThreadPoolExecutor类,帮助开发人员管理线程并方便地执行并行任务。了解并合理使用线程池,是一个开发人员必修的基本功。...

阅读(13)评论(0)赞 (0)

Java

SpringBoot 操作 ElasticSearch 详解(万字长文)

1

songhua.gao 发布于 2020-04-02

一、ElasticSearch 简介 1、简介 ElasticSearch 是一个基于 Lucene 的搜索服务器。它提供了一个分布式多员工能力的全文搜索引擎,基于 RESTful web 接口。Elasticsearch 是用 Java 语言开发的,并作为 Apache 许可条...

阅读(11)评论(0)赞 (0)

Java

mybatis缓存,从一个“灵异”事件说起

1

xubiao.zhuang 发布于 2020-04-02

刚准备下班走人,被一开发同事叫住,让帮看一个比较奇怪的问题:Mybatis同一个Mapper接口的查询方法,第一次返回与第二次返回结果不一样,百思不得其解! 问题 Talk is cheap. Show me the code. 该问题涉及的主要代码实现包括 mapper接口定义...

阅读(12)评论(0)赞 (0)

Java

通过Quartz如何Debug , 如何修复Bug

2

邓龙华 发布于 2020-04-02

​ 我们以Quartz的用JDBC作为JobStore为例子 开始很简单绝对是 : org.quartz.spi.JobStore 找他的接口实现类 -> 通过包名字可以发现 -> org.quartz.impl.jdbcjobstore 原来是JDBC , 继续 -...

阅读(13)评论(0)赞 (0)

编程技术

Netflix 的六边形架构实践

7

zhuangli 发布于 2020-04-02

作者 | Netflix Technology Blog 策划 | 万佳 本文阐述了Netflix是如何基于六边形架构去开发一款全新应用的。 随着 Netflix 原创内容的逐年增长,我们要构建一些可提升整个创作过程效率的应用。我们的一个大型部门,Studio 工程团队已经构建众...

阅读(14)评论(0)赞 (0)

Java

深入探索编译插桩技术(二、AspectJ)

1

hellas 发布于 2020-04-02

前言 成为一名优秀的Android开发,需要一份完备的 知识体系 ,在这里,让我们一起成长为自己所想的那样~。 现如今,编译插桩技术已经深入 Android 开发中的各个领域,而 AOP 技术正是一种高效实现插桩的模式,它的出现正好给处于黑暗中的我们带来了光明,极大地解决了传统开...

阅读(20)评论(0)赞 (0)

编程技术

微服务错误处理的一些思考

11

wenming.gapo 发布于 2020-04-01

系统内和系统间的错误处理,贯穿系统整个开发、运行、消亡的生命周期,是代码书写过程中特别需要花心思的一点。一个地方报错了,我是直接返回,还是打印一行日志再返回?嵌套函数的报错,如何找到报错的根本原因?http或rpc接口中的错误码应该定义在每个response结构体内还是说通过ht...

阅读(18)评论(0)赞 (0)

Java

15. SSM AOP环绕通知注解实现日志

wenming.gapo 发布于 2020-04-01

问题分析 当我们在做一个后台管理系统的时候,很多时候都会需要一个专门的日志模块,来记录登录的用户的操作,其一可以便于监测数据变化,其二,也可以记录用户做的一些操作,便于我们追根溯源,其三,当我们系统出现问题的时候,也可以通过查看日志,找出问题出在哪里,比如Tomcat Local...

阅读(24)评论(0)赞 (0)

编程技术

Choerodon 的微服务之路(三):服务注册与发现

3

hellas 发布于 2020-04-01

▌文章的主要内容包括: 服务注册/发现 服务注册表 健康检查 在上一篇文章的开始,我们提到解决微服务架构中的通信问题,基本只要解决下面三个问题: 服务网络通信能力 服务间的数据交互格式 服务间如何相互发现与调用 网络的互通保证了服务之间是可以通信的,通过对JSON 的序列化和反序...

阅读(16)评论(0)赞 (0)

Java

Mybatis 使用的 9 种设计模式,真是太有用了~

15

尖兵 发布于 2020-04-01

虽然我们都知道有26个设计模式,但是大多停留在概念层面,真实开发中很少遇到,Mybatis源码中使用了大量的设计模式,阅读源码并观察设计模式在其中的应用,能够更深入的理解设计模式。 Mybatis至少遇到了以下的设计模式的使用: Builder模式,例如SqlSessionFac...

阅读(18)评论(0)赞 (0)

Java

Spring Boot中的事务是如何实现的

4

wenming.gapo 发布于 2020-03-31

1. 概述 一直在用SpringBoot中的 @Transactional 来做事务管理,但是很少没想过SpringBoot是如何实现事务管理的,今天从源码入手,看看 @Transactional 是如何实现事务的,最后我们结合源码的理解,自己动手写一个类似的注解来实现事务管理,...

阅读(19)评论(0)赞 (0)