记5.20-5.21工作中遇到的问题
首先是mybatis部分的问题
update操作的时候,代码中显示已update完成,但是数据库中对应的数据并没有更新
- 原因:在获取sqlSession对象的时候:
SqlSession sqlSession = sqlSessionFactory.openSession(); - 解决方法:后面的参数可以填true/false:true为自动提交事务 ,false则相反(用于是否开启事务,默认为false)
当我加上true后,数据库的数据就可以正常提交了:SqlSession sqlSession = sqlSessionFactory.openSession(true);
数据库添加数据,代码中无法找到新增的数据
- 原因:在每一次循环之后,没有关闭sqlSession,导致再次循环时,拿到的依旧是没有更新数据的sqlSession对象,
所以并不会找到新增的数据 - 解决方法:在循环的最后将sqlSession对象close掉,保证每一次拿sqlSession对象拿到的都是最新的。
搭建mybatis环境的时候,& 符号xml文件报错
- 报错信息:org.xml.sax.SAXParseException;在实体引用中, 实体名称必须紧跟在 ‘’&’’ 后面
- 原因:在xml文件中,&读不出来
- 解决方法:用&代替
useUnicode=true&characterEncoding=utf-8&allowMultiQueries=true