开发者

Junit单元测试关于@Transactional注解引起的事务回滚问题

目录
  • @Tra编程客栈nsactional注解引起的事务回滚问题
    • 事务不回滚的解决办法
  • 单元测试@TransActional注解注意点
    • 总结

      @Transactional注解引起的事务回滚问题

      Junit单元测试时,在测试方法http://www.devze.com中打事务注解@Transactional,默认会按照@Rollback(true)来进行处理,即使在没加注解@Rollback,也会对事务回滚

      @Test
      @Transactional
      public void test01(){
      }

      Junit单元测试时,测试方法上加注解@Transactional

      事务不回滚的解决办法

      方法1:

      测试方法上在注解@Transactional的基础上,加注解@Rollback(value = false)

      @Test
      @Transactional
      @Rollback(value = false)
      public void test01(){
      }

      方法2:

      测试方法上在注解@Transactional的基础上,加注解@Commit

      @Test
      @Twww.devze.comransactional
      @Commit
      public void test01(){
      }

      单元测试@TransActional注解注意点

      单元测试@TransActional注解会自www.devze.com动回滚

      它会自动带有@Roll编程back(true)

      如果需要修改数据库就不要使用@TransActional注解或者添加@Rollback(flase)

      总结

      以上为个人经验,希望能给大家一个参考,也希望大家多多支持编程客栈(www.devze.com)。

      0

      上一篇:

      下一篇:

      精彩评论

      暂无评论...
      验证码 换一张
      取 消

      最新开发

      开发排行榜