- 博客(8)
- 资源 (1)
- 收藏
- 关注
原创 (八)关于spring aop的实现细节(如何实现的各种Advice)
(七)重点看了spring aop的各个主要接口的定义,以及简单分析了各个主要方法的作用,这节主要了解spring是怎么利用jdk\cglib 来实现的前置通知、环绕通知等等通过(七)中查看AbstractAutoProxyCreator类时,可以知道spring创建代理对象是通过ProxyFactory来创建的。那么这里就从ProxyFactory开始1、查看分析spring创建...
2018-05-21 10:17:41 2689
原创 (七)spring aop的源码学习
1.spring AOP相关的核心API接口定义关于AOP概念Aspect:方面 一个模块化的关于点Join point:连接点 程序中的一个执行点(比如执行方法、执行构造器)Advice: 通知 在特定的连接上的特定时机的特定行为Pointcut:切入点 用来匹配符合要求的连接点(用于配合通知使用,来控制在哪些连接点执行通知的行为)Int...
2018-05-11 17:36:16 346 1
原创 (六)关于spring中的FactoryBean与ObjectFactory以及其区别
1.查看接口定义以及其区别public interface FactoryBean<T> { //获取对象的工厂方法 @Nullable T getObject() throws Exception; //对象类型 @Nullable Class<?> getObjectType(); //是否是单例,这个属性...
2018-05-11 17:35:13 14329 4
原创 (五)关于BeanPostProcessor各个回调的时机
1、BeanPostProcessor的五大接口一共有11个回调方法1.1.BeanPostProcessor关于对象初始化前后的回调。public interface BeanPostProcessor { //该方法在bean实例化完毕(且已经注入完毕),在afterPropertiesSet或自定义init方法执行之前 @Nullable ...
2018-05-11 17:34:39 4989 1
原创 (四)BeanFactory初始化Singleton的实现细节
1.介绍查看ApplicationContext的启动以及初始化部分的代码时,发现最终实现对象创建以及所有非懒加载的单例对象整体初始化,都是通过DefaultListableBeanFacotry来实现的其中对象创建是通过beanFactory.getBean(xxx)来实现,而整体初始化是通过beanFactory.preInstantiateSingletons();来实现,下面针对这...
2018-05-11 17:33:58 4647
原创 (三)spring中BeanFacotryPostProcessor注册以及执行的先后顺序以及BeanPostProcessor的注册先后顺序
1. spring中的两大回调接口org.springframework.beans.factory.config.BeanFactoryPostProcessor关于对象工厂BeanFactory创建完毕的回调处理org.springframework.beans.factory.config.BeanPostProcessor关于通过对象工厂BeanFactory创建对象前后...
2018-05-11 17:32:47 4822 2
原创 (二)ApplicationContext的启动以及初始化过程
在查看SpringBoot的源码时,可以看到构造完ConfigurableApplicationContext实例后,是通过调用ConfigurableApplicationContext中的refresh方法来触发容器的一切处理流程的。1.关于AbstractApplicationContext的refresh()方法该方法是触发容器加载BeanDefinition以及创建对象等...
2018-05-11 17:32:19 5240
原创 (一)SpringBoot源码学习笔记
1、SpringBoot容器启动版本: <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>...
2018-05-11 17:30:28 837
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人