Mybatis自动提交失败:Setting autocommit to false on JDBC Connection

报错:

![在这里插入图片描述]( https://img-blog.csdnimg.cn/20200815200505858.PNG?x-oss-process=image/watermark ,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80NDY3NjkzNQ==,size_16,color_FFFFFF,t_70#pic_center)
今天在使用Mybatis进行添加数据的时候,发现自己的SQL语句没有问题!但是数据就是添加不到数据库?经过一番搜索发现,Mybatis默认情况下开启的是手动提交, 我们需要开启自动提交!

方法:

  1. 使用SqlSession对象调用commit()方法;
@Before
public  void init() throws Exception {
        input = Resources.getResourceAsStream("SqlMapConfig.xml");
        SqlSessionFactory factory = new SqlSessionFactoryBuilder().build(input);
        sqlSession =factory.openSession();
        userDao = sqlSession.getMapper(IUserDao.class);
        sqlSession.commit();
    }
  1. openSession()方法里加上 true参数
@Before
    public  void init() throws Exception {
        input = Resources.getResourceAsStream("SqlMapConfig.xml");
        SqlSessionFactory factory = new SqlSessionFactoryBuilder().build(input);
        sqlSession =factory.openSession(true);
        userDao = sqlSession.getMapper(IUserDao.class);
    }
posted @ 2020-08-19 19:55  GaoYang-笔迹  阅读(927)  评论(0)    收藏  举报