cla*_*son 1 java mysql ibatis mybatis
我有一个使用myBatis进行持久化的项目.下面的方法"A"工作正常,直到我添加了一些外键并将我的表从myISAM转换为innoDB.转换后,方法"A"将无声地失败,甚至在日志中都没有警告.转换后,只有方法"B"才能成功插入.两种方法都将正确的sql写入日志,但只有"B"才有效.
任何人都可以告诉我为什么我现在需要提交,但以前没有必要提交?
//doesnt work, but worked previously
public void A(Role role) {
SqlSession session = sqlSessionFactory.openSession();
try {
RoleMapper mapper = session.getMapper(RoleMapper.class);
mapper.updateByPrimaryKeySelective(role);
}catch(Exception e){
logger.error(e);
} finally {
session.close();
}
return;
}
//works correctly, but why?
public void B(Role role) {
SqlSession session = sqlSessionFactory.openSession();
try {
RoleMapper mapper = session.getMapper(RoleMapper.class);
mapper.updateByPrimaryKeySelective(role);
session.commit();
}catch(Exception e){
logger.error(e);
} finally {
session.close();
}
return;
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
9883 次 |
| 最近记录: |