自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(6)
  • 资源 (1)
  • 问答 (1)
  • 收藏
  • 关注

原创 Mybatis源码解析之标签的解析

阅读须知研究了半天markdown也没发现怎么为代码块中的重点代码做特殊标记,所以这里使用//单行注释做代码的简单注释,而/**/多行注释的代码会做深入分析,同时为了避免篇幅过长,删掉了Mybatis原来的注释和空行,建议配合Mybatis源代码进行阅读,本文对应的Mybatis源码的版本为3.4.4。正文Mybatis是我们日常开发过程中经常使用的ORM框架,读者可以首先参考Mybatis中文官方

2017-12-31 12:28:07 2511

原创 SpringAOP源码解析之代理创建篇

阅读须知研究了半天markdown也没发现怎么为代码块中的重点代码做特殊标记,所以这里使用//单行注释做代码的简单注释,而/**/多行注释的代码会做深入分析,同时为了避免篇幅过长,删掉了Spring原来的注释和空行,建议配合Spring源代码进行阅读,本文对应的Spring源码的版本为4.3.8。正文Spring AOP是我们日常开发中经常使用的工具,常被用来做统一的日志、异常处理、监控等功能,使用

2017-12-30 18:23:08 1732

原创 MySQL主从同步原理

前言关于mysql主从同步,相信大家都不陌生,随着系统应用访问量逐渐增大,单台数据库读写访问压力也随之增大,当读写访问达到一定瓶颈时,将数据库的读写效率骤然下降,甚至不可用;为了解决此类问题,通常会采用mysql集群,当主库宕机后,集群会自动将一个从库升级为主库,继续对外提供服务;那么主库和从库之间的数据是如何同步的呢?正文为了减轻主库的压力,应该在系统应用层面做读写分离,写操作走主库,读操作走从库

2017-12-30 16:58:15 4489 1

原创 SpringMVC源码解析之执行过程篇

阅读须知Spring源码版本:4.3.8文章中使用/**/注释的方法会做深入分析正文承接上文,我们知道HttpServlet提供一些处理请求的方法,如doGet、doPost、service等,在DispatcherServlet中的实现都调用了processRequest方法,我们来分析这个方法: FrameworkServlet:protected final vo...

2017-12-21 10:25:43 1593 2

原创 用 Observer 模式替换硬编码通知

最近在重构中用到了设计模式中的观察者模式,简单的跟大家分享一下观察者模式的原理和使用场景。在进入正题之前,先简单的介绍一下业务场景,交易系统中很重要的一个流程就是订单状态的流转,这次重构的就是订单完成的部分。 订单完成之后,要做很多的后续工作,比如通知用户、发起计费、扣点、通知相关系统等。重构之前的代码结构如下: class OrderMessageResolver implements M

2017-12-09 16:49:23 3323

原创 责任链模式实践

最近在开发过程中需要修改这样一段代码:InvoiceSubmitter invoiceSubmitter;if (isBizBook) { //图书业务 if (isVatInvoice) { //增值税专用发票 invoiceSubmitter = rjVatInvoiceSubmitter; } else { //增值税普通发票 invoiceS

2017-12-08 17:24:27 3700

Java 8实战(中文完整版).pdf

java8 实战 中文版 完整版 清晰 java8 in action 中文翻译版

2018-05-04

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除