如何简单理解spring aop和事务
本文内容纲要:如何简单理解spring aop和事务
用比喻的方法理解吧:
初学者的理解,仅仅为了个人好记
aop:由三部分组成:工具箱,工人,为工人分配工具
tx事务:由四部分组成:管理者,制度,工人,向工人通知管理制度
为什么这样理解呢?个人觉得好记:
在aop 中有切面:切面内的东西用来公共使用,类似于工具箱:
ref就是这个工具箱的具体bean。。
<aop:aspect id="***" ref="*****">
切点:切点是许多符合切点表达式的东西,只要符合就可以使用公共的东西。根据表达式,挑出全部符合的。。成为工人
<aop:pointcut id="XXXXXXX" expression="execution(* party.infoo.spring.AOP.service.*.*(..))"/>
通知:什么前置后置返回等等,无非就是定义了什么时候使用什么,所以理解成为工人分配工具
<aop:before method="doBefore" pointcut-ref="XXXXXXX"/>
<aop:after method="doAfter"
pointcut-ref="XXXXXXX"/>
<aop:around method="doAround"
pointcut-ref="XXXXXXX"/>
<aop:after-returning method="doAfterReturning"
pointcut-ref="XXXXXXX"/>
<aop:after-throwing method="doAfterThrowing"
pointcut-ref="XXXXXXX"
throwing="ex"/>
事务:
管理者:
<bean id="transactionManager" class="org.springframework.orm.hibernate4.HibernateTransactionManager"> <property name="sessionFactory" ref="sessionFactory"/>
</bean>
管理制度的内容就是什么工人做什么任务:如下,是对工人的约束
管理制度(事务通知)不可能无缘无故存在,所以其需要transaction-manager=“ 管理者 ”
<tx:advice id="transactionInterceptor" transaction-manager="transactionManager"> <tx:attributes>
<tx:method name="insert*" propagation="REQUIRED" />
<tx:method name="update*" propagation="REQUIRED" />
<tx:method name="edit*" propagation="REQUIRED" />
<tx:method name="save*" propagation="REQUIRED" />
<tx:method name="add*" propagation="REQUIRED" />
<tx:method name="new*" propagation="REQUIRED" />
<tx:method name="set*" propagation="REQUIRED" />
<tx:method name="remove*" propagation="REQUIRED" />
<tx:method name="delete*" propagation="REQUIRED" />
<tx:method name="change*" propagation="REQUIRED" />
<tx:method name="get*" propagation="REQUIRED" read-only="true" />
<tx:method name="find*" propagation="REQUIRED" read-only="true" />
<tx:method name="load*" propagation="REQUIRED" read-only="true" />
<tx:method name="*" propagation="REQUIRED" read-only="true" />
</tx:attributes>
</tx:advice>
**工人:**工人的定义和aop中类似,只要符合条件的都是工人
<aop:pointcut id="serviceOperation" expression="execution(* party.infoo.service..*.*(..))"/>
向工人通知管理制度: advisor
<aop:advisor advice-ref="transactionInterceptor" pointcut-ref="serviceOperation"/>
本文内容总结:如何简单理解spring aop和事务
原文链接:https://www.cnblogs.com/infoo/p/6422074.html
以上是 如何简单理解spring aop和事务 的全部内容, 来源链接: utcz.com/z/362977.html