spring怎样在service层控制事务
答案:3 悬赏:30 手机版
解决时间 2021-04-05 02:33
- 提问者网友:自食苦果
- 2021-04-04 04:31
spring怎样在service层控制事务
最佳答案
- 五星知识达人网友:渊鱼
- 2021-04-04 04:47
< bean id=”txManager”>
< property name=”sessionFactory” ref=”sessionFactory” />
< /bean>
< !– 创建通知–>
< tx:advice id=”txAdvice” transaction-manager=”txManager”>
< tx:attributes>
< tx:method name=”find*” read-only=”true”/>
< tx:method name=”has*” read-only=”true”/>
< tx:method name=”add*” propagation=”REQUIRED” />
< tx:method name=”alter*” propagation=”REQUIRED” />
< tx:method name=”upd*” propagation=”REQUIRED” />
< tx:method name=”del*” propagation=”REQUIRED” />
< tx:method name=”exec*” propagation=”REQUIRED” />
< /tx:attributes>
< /tx:advice>
< !– 切入接口所在的包 –>
< aop:config>
< aop:pointcut id=”serviceOperation” expression=”execution(public * org.bgi.*.service.*.*(..))” />
< aop:advisor advice-ref=”txAdvice” pointcut-ref=”serviceOperation” />
< /aop:config>
全部回答
- 1楼网友:山君与见山
- 2021-04-04 06:27
Spring配置文件中关于事务配置总是由三个组成部分,分别是DataSource、TransactionManager和代理机制这三部分,无论哪种配置方式,一般变化的只是代理机制这部分。
DataSource、TransactionManager这两部分只是会根据数据访问方式有所变化,比如使用Hibernate进行数据访问时,DataSource实际为SessionFactory,TransactionManager的实现为HibernateTransactionManager。
DataSource、TransactionManager这两部分只是会根据数据访问方式有所变化,比如使用Hibernate进行数据访问时,DataSource实际为SessionFactory,TransactionManager的实现为HibernateTransactionManager。
- 2楼网友:一袍清酒付
- 2021-04-04 05:26
通过AOP
class="org.springframework.orm.hibernate3.HibernateTransactionManager">
expression="execution(public * com.bjsxt.registration.service.*.*(..))" />对什么类加事物
advice-ref="txAdvice" />
这里就是控制事务,add*,表示对add方法加事物
expression="execution(public * com.bjsxt.registration.service.*.*(..))" />对什么类加事物
advice-ref="txAdvice" />
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯