Spring
文章平均质量分 92
不是章鱼的章鱼哥
马达马达达内
展开
-
Spring 事务源码分析
在前面一期我们分析过Spring AOP的原理,并且在结尾自定义了一个AOP的拦截器简单实现,如果没有弄明白AOP原理的朋友,还是先弄清楚AOP再来看本文,因为Spring事务就是以AOP为基础实现的。提到事务,我们最早学习JDBC的时候,如果要进行数据库操作,通常可以把方法抽象成这样try{ //关闭自动提交,开启事务 con.setAutoCommit(false); //..... //DML、DQL操作 //提交事务 con.commit();}catc原创 2021-12-10 17:27:25 · 1137 阅读 · 0 评论 -
Spring AOP源码分析
在前面我们分析过IOC的大致流程,这期就带大家来分析Spring中另外一大特性AOP的实现原理。建议阅读本文前,懂得IOC的原理,AOP的使用以及基础的概念问题,因为AOP的实现是基于IOC之上的。在学习AOP的时候,大家或多或少都听过AOP的原理是动态代理,但是大家有想过动态代理的前提是什么吗?不管是JDK还是CGlib代理,你都要给代理类传入被代理的对象,那说明这时候目标对象已经被创建出来了。把这一点带入到IOC的流程,大致可以猜到,AOP的实现一定是在bean被实例化之后。那么在bean的生命周期里原创 2021-12-06 13:39:55 · 468 阅读 · 0 评论 -
Spring IOC源码分析
阅读前建议读者先掌握Spring中的基本概念,本文从源码角度分析IOC容器的创建过程,大体涉及两个重要部分,一个是Bean容器的创建,一个是Bean的生命周期,建议在阅读时自己跟着源码一起走一遍流程。注意:因为版本的不同,源码小部分会有一定变化,不过不影响大体流程,核心部分都还是相同的。然后本文不对Spring中涉及的一些概念做解释,仅分析启动流程。让我们先来看一下最基本的Spring容器的demopublic static void main(String[] args){ Application原创 2021-11-26 17:43:37 · 449 阅读 · 0 评论