使用Mybatis时程序执行成功,数据库却没有改变

以上程序执行没有报错,执行结果如下:

显示有一行数据插入,可是查看数据库发现并没有插入的这行数据:

-----------------------------------------------------------------------------------------------------------------------

经网上查找后发现原因:

因为mybatis默认不是自动提交事务的, 所以其实没有修改数据库, 
刚刚新增完后立即返回的结果,是从mybatis为了提高性能设置的缓存里读取的,不是从数据库读取的
解决的办法有如下两种:

1.在openSession() 的括号里写true, 设定自动提交事务,

2.在代码中加入sqlSession.commit()


修改过后执行成功,数据库数据也插入进去了!

猜你喜欢

转载自blog.csdn.net/qq_33419463/article/details/89358829