我的问题很简单。在像这样提交事务后,是否可以重用会话?
try (SqlSession session = sqlSessionFactory.openSession()) {
// following 3 lines pseudocode for "doing some work"
session.insert(...);
session.update(...);
session.delete(...);
session.commit();
session.insert();
session.commit();
}
或者提交后关闭会话并打开新会话会更好吗?
答案 0 :(得分:2)
我刚刚开始使用MyBatis,并且遇到了类似的会话管理问题。这是我迄今为止学到的东西:
对于您的简单示例,可以保持会话对这两个事务保持打开状态。在整个DAO层中有效使用MyBatis会话意味着在这两个指南之间找到平衡点。
花点时间阅读有关会话管理和缓存的官方文档:https://mybatis.github.io/mybatis-3/java-api.html#sqlSessions