当前位置: 首页 > article >正文

java springboot测试类Transactional解决 测试过程中在数据库留下测试数据问题

好 目前 我们已经完成了表现层对应的测试了
但这里有个坑 如果我们在执行某个声明周期时 包含了测试的过程 它会在数据库中留下一条数据
在这里插入图片描述
但真实企业开发 绝对不允许 过一遍留一组数据的

那么 我们的期望就是 执行测试过程 但不要留下任何数据

这是我们的数据库表
在这里插入图片描述
然后 这里 我们在测试类中 调用一下连数据库的函数 测试一下添加操作
在这里插入图片描述
然后 我们右键运行函数
在这里插入图片描述
然后再回头查看数据库

我们右键表 然后选择刷新表
在这里插入图片描述
然后再重新打开 好家伙 这下数据还进来了
在这里插入图片描述
我们这里加一个注解 Transactional 这是 spring 添加事务的注解

在这里插入图片描述
我们再次右键运行
在这里插入图片描述
然后 我们回头 刷新 查看数据库表
在这里插入图片描述
这下数据就没进来了

或者说 其实数据已经进来了 但是 又被事务回滚了 Transactional 和 Rollback 可以配合使用
不过一般来讲 Rollback 用不到
Rollback 控制事务是否回滚 默认值是true
我们将代码改成这样
在这里插入图片描述
Rollback设为false 表示 事务不回滚 然后我们右键运行之后查看数据库表

我们数据就进来了 因为不回滚了
在这里插入图片描述


http://www.kler.cn/a/146874.html

相关文章:

  • Qt 的 QThread:多线程编程的基础
  • 【qt】控件3
  • 十五届蓝桥杯赛题-c/c++ 大学b组
  • 【服务器组件】如何辨别服务器组件
  • 极速入门数模电路
  • python读写excel等数据文件方法汇总
  • ArgoCD基本组件
  • 基于Hadoop的区块链海量数据存储的设计与实现
  • 【开源】基于Vue和SpringBoot的食品生产管理系统
  • vr小鼠虚拟解剖实验教学平台减少了受感染风险
  • 【华为OD题库-038】支持优先级的对列-java
  • CountDownLatch和CyclicBarrier源码详解
  • 计算机毕业设计 基于SpringBoot的无人智慧超市管理系统的设计与实现 Java实战项目 附源码+文档+视频讲解+答疑
  • android基于UDP实现聊天小功能
  • 计算机毕业设计|基于SpringBoot+MyBatis框架的仿天猫商城购物系统设计与实现
  • 第1章 爬虫基础
  • B树与B+树的对比
  • 树的序列化与反序列化
  • 自建CA实战之 《0x01 Nginx 配置 https单向认证》
  • C#线程 ConcurrentQueue安全队列介绍
  • Redis-性能优化
  • 视频号小店是什么?新手入驻需要什么条件?一篇详解!
  • tp8 使用rabbitMQ(1)简单队列
  • 企业联系方式真的那么难获取吗?
  • 力扣6:N字形变化
  • 【C语法学习】28 - 字符测试函数