摘要: Spring事物简要介绍: 1.Spring事物是基于AOP而实现的业务方法增强,在执行业务方法前面新建事物,或者在已有事物上面进行处理,然后当当业务目标方法正常执行的时候,执行事物提交,否则执行事物回滚。注意在默认情况下面,spring事物只是对RuntionException和Error异常进行 阅读全文
posted @ 2018-09-29 15:26 烟尘 阅读(294) 评论(0) 推荐(0) 编辑
摘要: MethodInterceptor AdvisorAdapter和Advice之间实现了适配器模式首先增加方法的执行时通过拦截器链进行执行的,而配置文件配置的参数解析完以后是一增强对象的形式进行封装的拦截器要想调用增强Advice的增强方法,是无法直接方访问的,因此加一个增强适配类,将增强转换为拦截 阅读全文
posted @ 2018-08-16 11:23 烟尘 阅读(1207) 评论(0) 推荐(0) 编辑
摘要: JdkDynamicAopProxy 实现了InvocationHandler接口当使用jdk动态代理生成的代理对象在执行的时候回执行invoke方法 下面分析有拦截器链的情况下:进入 下面进入方法getInterceptorsAndDynamicInterceptionAdvice看如何构建拦截器 阅读全文
posted @ 2018-08-16 10:28 烟尘 阅读(223) 评论(1) 推荐(0) 编辑
摘要: 在xml解析好以后再在代理对象生成的过程中将生成6个对象userDao:目标对象logger:定义的切面InternalAutoProxyCreator:用来生成代理对象的后置处理器,它实现了BeanPostProcessor,类型是AspectJAwareAdvisorAutoProxyCreat 阅读全文
posted @ 2018-08-15 18:22 烟尘 阅读(319) 评论(0) 推荐(1) 编辑
摘要: SpringAop实现为动态代理进行实现的,实现方式有2种,JDK动态代理和CGlib动态代理先写一个AOP的案列加以说明配置文件代码为: 其中增强类Logger的实现为: 被曾强类UserDaoImpl和被曾强类接口的实现为: 测试方法代码: 运行结果: 可以看出对目标方法进行了增强。 下面开始从 阅读全文
posted @ 2018-08-15 18:01 烟尘 阅读(358) 评论(0) 推荐(1) 编辑
摘要: 在此之前已经完成了IOC对xml的解析和实例化工作,接下来需要分析Spring的高级版本对IOC容器的功能扩展: 代码分析如下: 接下来,即开始对上面的步奏进行一一的讲解: prepareRefresh();// 准备刷新上下文环境 下面举一个列子,来帮助理解,如何验证所需的属性已经存放到环境中 我 阅读全文
posted @ 2018-06-13 19:44 烟尘 阅读(157) 评论(0) 推荐(0) 编辑
摘要: 之前我们讲解了缓存中单例的获取,解下来需要讲解缓存中不存在该如何处理 接下来对代码 singletonObject = this.singletonObjects.get(beanName);进行分析 我们跟踪了这么久的代码发现,一个真正干活的代码一般是以do开头的,比如 doGetObejctFa 阅读全文
posted @ 2018-05-05 11:45 烟尘 阅读(272) 评论(0) 推荐(0) 编辑
摘要: 我们终于结束了对XML配置文件的解析,接下来我们要分析bean的加载,即对代码getBean的分析: People p = (People)ctx.getBean("cutesource"); 进一步分析 FactoryBean的使用 FactoryBean接口对于Spring框架来说占有重要的地位 阅读全文
posted @ 2018-05-04 06:43 烟尘 阅读(1287) 评论(0) 推荐(0) 编辑
摘要: 对代码delegate.parseCustomElement(ele);进行深入分析 对于dubbo就是使用了spring自定义标签解析的功能特性。Spring自定 义标签解析的过程如下: 现在开始依据上面的步骤开始使用自定义标签解析 1.创建一个类用来接收配置文件中的属性 创建一个xsd文件描述x 阅读全文
posted @ 2018-05-03 06:01 烟尘 阅读(247) 评论(0) 推荐(1) 编辑
摘要: 这里主要分新bean标签的处理,其他都类似 继续深入分析 BeanDefinitionParserDelegate 类的parseBeanDefinitionElement方法: 接下来进一步分析对其他bean标签的解析方法: AbstractBeanDefinition beanDefinitio 阅读全文
posted @ 2018-05-01 21:28 烟尘 阅读(282) 评论(1) 推荐(1) 编辑