在不使用Spring的情况下,可以使用MyBatis提供的SqlSessionFactory
和SqlSession
来进行事务管理。以下是一个基本的示例代码:
SqlSessionFactory
对象:String resource = "mybatis-config.xml";
InputStream inputStream = Resources.getResourceAsStream(resource);
SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream);
SqlSessionFactory
创建一个SqlSession
对象:SqlSession sqlSession = sqlSessionFactory.openSession();
SqlSession
的方法执行数据库操作:try {
// 开启事务
sqlSession.getConnection().setAutoCommit(false);
// 执行数据库操作
// ...
// 提交事务
sqlSession.commit();
} catch (Exception ex) {
// 回滚事务
sqlSession.rollback();
} finally {
// 关闭SqlSession
sqlSession.close();
}
在上面的代码中,我们首先通过SqlSessionFactoryBuilder
从配置文件(mybatis-config.xml
)中创建了一个SqlSessionFactory
对象。然后,我们使用SqlSessionFactory
创建了一个SqlSession
对象。在进行数据库操作之前,我们需要手动开启事务,并在操作完成后提交事务。如果发生异常,可以回滚事务。最后,我们关闭了SqlSession
。
需要注意的是,上面的代码只是一个简单的示例,并没有展示具体的数据库操作。实际使用时,你需要根据自己的需求来编写具体的数据库操作代码。同时,你也可以使用MyBatis提供的Mapper接口来简化数据库操作,具体使用方法可以参考MyBatis的官方文档。