Spring 事务机制

文章转自:http://blog.csdn.net/lenolong/article/details/3945618

spring事务管理:

可以通过两种方式实现,一是用AOP来控制事务:

<!--配置事务管理器-->

<beanid="transactionManager"class="org.springframework.orm.hibernate3.HibernateTransactionManager">

<propertyname="sessionFactory">

<reflocal="sessionFactory"/>

</property>

</bean>

<!--配置事务特性-->

<tx:adviceid="txAdvice"transaction-manager="transactionManager">

<tx:attributes>

<tx:methodname="*"propagation="REQUIRED"/>

<!--

<tx:methodname="add*"propagation="REQUIRED"/>

<tx:methodname="del*"propagation="REQUIRED"/>

<tx:methodname="update*"propagation="REQUIRED"/>

<tx:methodname="deploy*"propagation="REQUIRED"/>

<tx:methodname="submit*"propagation="REQUIRED"/>

<tx:methodname="*"read-only="true"/>

-->

</tx:attributes>

</tx:advice>

<!--配置哪些类的方法进行事务管理-->

<aop:config>

<aop:pointcutid="allManagerMethod"expression="execution(*com.bjsxt.oa.managers.*.*(..))"/>

<aop:advisoradvice-ref="txAdvice"pointcut-ref="allManagerMethod"/>

</aop:config>

二是用事务拦截器的方式来控制事务:

<!--TransactionmanagerforasingleHibernateSessionFactory(alternativetoJTA)-->

<beanid="myTransactionManager"class="org.springframework.orm.hibernate3.HibernateTransactionManager">

<propertyname="sessionFactory">

<reflocal="mySessionFactory"/>

</property>

</bean>

<!--配置事务管理-->

<beanid="userService"class="org.springframework.transaction.interceptor.TransactionProxyFactoryBean">

<propertyname="transactionManager">

<reflocal="myTransactionManager"/>

</property>

<propertyname="target">

<reflocal="loginTarget"/>

</property>

<propertyname="transactionAttributes">

<props>

<propkey="save*">PROPAGATION_REQUIRED</prop>

</props>

</property>

</bean>

<!--OrderTargetprimarybusinessobjectimplementation-->

<beanid="loginTarget"class="com.test.spring.UserServiceImpl">

<propertyname="userDAOIF">

<reflocal="userDAO"/>

</property>

</bean>

<!--DAOobject:Hibernateimplementation-->

<beanid="userDAO"class="com.test.hibernate.UserDAOImpl">

<propertyname="sessionFactory">

<reflocal="mySessionFactory"/>

</property>

</bean>

相关推荐