开发者社区> 问答> 正文

在线等!!AOP事务配置问题! : 配置报错 

现在我用的是这种配置方式:
applicationContext.xml中AOP配置为:

<bean id="Log" class="simple.system.simpleweb.Log.MyLog"></bean> <aop:config> <aop:aspect id="b" ref="Log"> <aop:pointcut id="log" expression="execution(* simple.system.simpleweb.service...(..))"/> <aop:before pointcut-ref="log" method="before" /> <aop:after pointcut-ref="log" method="after" /> </aop:aspect> </aop:config>

这种配置方法可以正常运行但是,自定义方法里面不能有事务,数据库增删改操作不执行。

请问这种方法配置下怎么加入事务配置?

我网上搜索AOP事务配置

基本都是这种配法:

<!-- 事务管理 -->
<bean id="transactionManager" class="org.springframework.orm.hibernate3.HibernateTransactionManager">
<property name="sessionFactory" ref="sessionFactory"></property>
</bean>

<!-- 事务通知 -->
<tx:advice id="txAdvice" transaction-manager="transactionManager">
<tx:attributes>
<tx:method name="get*" read-only="true"/>
<tx:method name="*" propagation="REQUIRES_NEW" rollback-for="Exception"/>
<!-- REQUIRES_NEW 的含义:不管怎样都新建一个事务,如果有事务,原来事务挂起 -->
</tx:attributes>
</tx:advice>

<!-- aop代理设置 -->
<aop:config proxy-target-class="true">
<aop:pointcut id="txPointcut" expression="execution(* com.bluesky.service.Service.(..))"/>
<aop:advisor advice-ref="txAdvice" pointcut-ref="txPointcut" />

</aop:config>

如果上面一种方法无法添加事务,非要用这种方法配置,那么我的目标类MyLog.java如何指定呢?
急求高手!!!

展开
收起
kun坤 2020-06-03 16:36:54 486 0
1 条回答
写回答
取消 提交回答
  • 目标类需要放置在配置中指明的地方。expression那后面就是需要添加事务的地方。(我也是刚开始学不一定正确,望见谅)
    <aop:pointcutid="txPointcut"expression="execution(* com.bluesky.service.Service.(..))"/>      

    2020-06-05 13:22:29
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
高可用数据库的搭建与备份恢复策略验证实战 立即下载
Redis的开发规范和常见问题 立即下载
低代码开发师(初级)实战教程 立即下载