a9805943 2016-03-14 11:50 采纳率: 83.3%
浏览 2435
已采纳

spring事务回滚只能配在service层吗。为什么我想在Test中添加事务不能进行回滚呢

<tx:advice id="txAdvice2" transaction-manager="txManager">
    <tx:attributes>
        <tx:method name="inserttwo*" propagation="REQUIRED"/>
    </tx:attributes>
</tx:advice>
<aop:config>        
    <aop:pointcut expression="execution(* com.test.*.*(..))" id="pointCu"/>
    <!-- <aop:pointcut expression="execution(* ssm.service.*.*(..))" id="pointCut"/> -->
    <aop:advisor advice-ref="txAdvice2" pointcut-ref="pointCu"/>
</aop:config>
 @Test
    public void inserttwo(){


        UserInfo user=new UserInfo();
        user.setEmail("email");
        user.setPassword("password");
        user.setUsername("d9805943");       
        userService.insert(user);
        int i=10/10;

我这样配调用inserttwo()方法后还是会插入这个userinfo

  • 写回答

4条回答

  • shuijieshuijie 2016-03-14 12:02
    关注

    第一:web层事务,这一般是针对那些安全性要求较高的系统来说的。例如电子商务网站。粒度小,一般系统用不着这么细。
    第二:service层事务,这是一常见的事务划分, 将事务设置在业务逻辑上,只要业务逻辑出错或异常就事务回滚。粒度较小,一般推荐这种方式。
    第三:数据持久层数据务,也就是常说的数据库事务。这种事务在安全性方面要求低。就是给一个简单的增删改之类的操作增加事务操作。粒度大

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(3条)

报告相同问题?

悬赏问题

  • ¥15 画两个图 python或R
  • ¥15 在线请求openmv与pixhawk 实现实时目标跟踪的具体通讯方法
  • ¥15 八路抢答器设计出现故障
  • ¥15 opencv 无法读取视频
  • ¥15 用matlab 实现通信仿真
  • ¥15 按键修改电子时钟,C51单片机
  • ¥60 Java中实现如何实现张量类,并用于图像处理(不运用其他科学计算库和图像处理库))
  • ¥20 5037端口被adb自己占了
  • ¥15 python:excel数据写入多个对应word文档
  • ¥60 全一数分解素因子和素数循环节位数