作为【死磕SpringAOP】系列的第一篇,这个系列是AOP源码分析级别的文章。由于现在AOP已经不是什么高深的技术,网上的例子也比比皆是,不论是xmlschema,还是annotation声明式。相信用过Spring的朋友,都可以信手拈来。本系列文章的原则如何配置AOP不是重点AOP相关概念讲解不是..
分类:
编程语言 时间:
2016-06-03 07:40:15
阅读次数:
424
Spring 源码解析之DispatcherServlet源码解析(五)前言
本文需要有前四篇文章的基础,才能够清晰易懂,有兴趣可以先看看详细的流程,这篇文章可以说是第一篇文章,也可以说是前四篇文章的的汇总,Spring的整个请求流程都是围绕着DispatcherServlet进行的
类结构图根据类的结构来说DispatcherServlet本身也是继承了HttpServlet的,所有的请求都是...
分类:
编程语言 时间:
2016-06-02 14:50:07
阅读次数:
362
bean 是Spring 中最核心的东西,因为Spring就像是个大水桶,而bean就像是容器中的水,水桶脱离了水便也没什么用处了。 一、核心类: 1.DefaultListableBeanFactory XmlBeanFactory 继承自 DefaultListableBeanFactory , ...
分类:
编程语言 时间:
2016-05-30 00:59:51
阅读次数:
188
SpringBoot启动过程: 1、构建SpringApplication对象 2、执行run() 一、构建SpringApplication对象 说明: 实例化该类的时候会加载bean到applicationContext中去 这里的入参是MySpringApplication.class这样一个 ...
分类:
移动开发 时间:
2016-05-29 22:55:22
阅读次数:
298
前几天看了一下Spring的部分源码,发现回调机制被大量使用,觉得有必要把Java回调机制的理解归纳总结一下,以方便在研究类似于Spring源码这样的代码时能更加得心应手。 注:本文不想扯很多拗口的话来充场面,我的目的是希望以最简明扼要的语言将Java回调的大概机制说清楚。好了,言归正传。 一句话, ...
分类:
编程语言 时间:
2016-05-27 14:42:44
阅读次数:
159
Spring 源码解析之ViewResolver源码解析(四)1 ViewResolver类功能解析1.1 ViewResolver
Interface to be implemented by objects that can resolve views by name.
View state doesn’t change during the running of the applic...
分类:
编程语言 时间:
2016-05-27 12:09:28
阅读次数:
621
Spring源代码解析(收藏) Spring源代码解析(一):IOC容器:http://www.iteye.com/topic/86339 Spring源代码解析(二):IoC容器在Web容器中的启动:http://www.iteye.com/topic/86594 Spring源代码解析(三):S ...
分类:
编程语言 时间:
2016-05-25 22:06:57
阅读次数:
144
MyBatis相信很多人都会使用,但是当MyBatis整合到了spring中,我们发现在Spring中使用更加方便了。既然那么方便,Spring到底为我们做了哪些工作呢,它如何将MyBatis整合到Spring中的呢,Spring在整合MyBatis时候做了哪些封装,以及做了哪些拓展,又是怎么实现这些封装以及拓展的,让我们来打开这一部分的源代码,一探究竟。...
分类:
编程语言 时间:
2016-05-21 01:30:36
阅读次数:
308
Spring 源码解析之HandlerAdapter源码解析(二)前言
看这篇之前需要有Spring 源码解析之HandlerMapping源码解析(一)这篇的基础,这篇主要是把请求流程中的调用controller流程单独拿出来了
解决上篇文章遗留的问题
getHandler(processedRequest) 这个方法是如何查找到对应处理的HandlerExecutionChain和Handl...
分类:
编程语言 时间:
2016-05-20 19:40:10
阅读次数:
314
一、代码实例 回到第IOC的第七章context部分,我们看源码分析部分,可以看到在spring的bean加载之后的第二个重要的bean为applicationEventMulticaster,从字面上我们知道它是一个事件广播器。在第8和9部分,详细描述了广播器的初始化: 1、查找是否有name为a ...
分类:
移动开发 时间:
2016-05-16 14:20:38
阅读次数:
264