Junit单元测试关于@Transactional注解引起的事务回滚问题
@Transactional注解引起的事务回滚问题
Junit单元测试时,在测试方法中打事务注解@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
@Transactional
@Commit
public void test01(){
}单元测试@TransActional注解注意点
单元测试@TransActional注解会自动回滚
它会自动带有@Rollback(true)
如果需要修改数据库就不要使用@TransActional注解或者添加@Rollback(flase)
总结
以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。
相关文章
解决springboot集成swagger碰到的坑(报404)
这篇文章主要介绍了解决springboot集成swagger碰到的坑(报404),具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教2021-06-06
jstl之map,list访问遍历以及el表达式map取值的实现
下面小编就为大家带来一篇jstl之map,list访问遍历以及el表达式map取值的实现。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧2017-03-03
Springboot SseEmitter流式输出的实现代码
本文介绍了Spring Boot中使用SseEmitter实现流式输出的原理和示例代码,通过SseEmitter,可以实现客户端和服务器之间的实时通信,服务器可以分块发送数据,而客户端可以实时接收和处理这些数据,,感兴趣的朋友一起看看吧2025-03-03


最新评论