日期:2014-05-19  浏览次数:20684 次

spring怎样在service层控制事务呢?
没用过,希望哪位给个例子,谢谢

------解决方案--------------------
就算在service层开启事务管理...而不是Dao层
------解决方案--------------------
配置式的,注入式的都行,只要加在service层。具体怎么做网上搜吧,很多的。
------解决方案--------------------
看看我列子吧,
http://download.csdn.net/detail/zuxianghuang/4158479
------解决方案--------------------
通过AOP
<bean id="txManager"
class="org.springframework.orm.hibernate3.HibernateTransactionManager">
<property name="sessionFactory" ref="sf" />
</bean>

<aop:config>
<aop:pointcut id="bussinessService"
expression="execution(public * com.bjsxt.registration.service.*.*(..))" />对什么类加事物
<aop:advisor pointcut-ref="bussinessService"
advice-ref="txAdvice" />
</aop:config>

<tx:advice id="txAdvice" transaction-manager="txManager">
<tx:attributes>
<tx:method name="exists" read-only="true" />
<tx:method name="add*" propagation="REQUIRED"/>这里就是控制事务,add*,表示对add方法加事物
</tx:attributes>
</tx:advice>