spring事务
spring事务是基于AOP技术和异常通知实现的。
spring事务又分为编程式事务,声明式事务。
编程式事务属于入侵式事务,每次都要单独的实现,业务量大功能复杂的时候比较麻烦。
声明式事务属于无入侵式的,建立在AOP之上,在方法的前后进行拦截,然后目标方法开始之前创建或者加入一个spring事务,执行目标方法完成之后根据执行情况提交或者回滚。
spring事务的底层原理实际上就是编程式事务+AOP技术进行包装的=声明式事务
SpringAOP
什么是AOP?
AOP是一种面向切面编程技术,解决代码复用问题,解耦。
AOP的应用场景?
日志,事务,异常通知,参数验证,性能监控。
AOP编程的核心?
在方法的前后处理事情,底层用的是代理模式
AOP技术?
关注点:重复的代码
切面:关注点形成的类,可以叫切面类,把重复代码抽取出来,在运行业务方法的时候动态的织入。
切入点:执行的目标对象,也就业务方法(在该方法前后拦截参数)
SpringAOP底层原理?
SpringAOP主要是由代理模式实现。
- 代理模式又分为动态代理和静态代理