JDBC/Mybatis Junit测试进行增删改的时候明明代码没错,可是数据并无变。

在这里插入图片描述

如上图代码没错,运行也没错,原本应该添加一条数据的可是数据并无更新啊!java

!!!我想起来了,每次进行增删改以后都应该提交事务啊,因而我在sqlSession.close();的上面加了一条 sqlSession.commit();web

但是又报错了!!!意思大概是重复插入了id=9的这一行,我看了一眼数据库,居然插入成功了???我寻思着我就点了测试运行一遍啊,为啥会说重复插入? 查了查资料,终于找到了解决办法了。sql

org.apache.ibatis.exceptions.PersistenceException: 
### Error updating database.  Cause: java.sql.SQLIntegrityConstraintViolationException: Duplicate entry '7' for key 'user.PRIMARY'
### The error may exist in com/itcase/dao/UserMapper.xml
### The error may involve com.itcase.dao.UserMapper.insertUser-Inline
### The error occurred while setting parameters
### SQL: insert into db3.user values (?,?,?)
### Cause: java.sql.SQLIntegrityConstraintViolationException: Duplicate entry '7' for key 'user.PRIMARY'

在这里插入图片描述
解决办法
由于我点的是@Test运行 ,Maven不知道为啥会自动测试两边??有没有人能解释下。。。。数据库

而后我点开setting,把下面的箭头画勾,意思就是跳过测试。apache

而后就不会报错了,也能执行成功,就是不能用Maven直接运行测试单元了。。。。
在这里插入图片描述app

相关文章
相关标签/搜索