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)。
精彩评论