package com.sf.util; import org.apache.ibatis.io.Resources; import org.apache.ibatis.session.SqlSession; import org.apache.ibatis.session.SqlSessionFactory; import org.apache.ibatis.session.SqlSessionFactoryBuilder; import java.io.IOException; import java.io.InputStream; /** * @author WanJl * @version 1.0 * @title SqlSessionFactoryUtils * @description 用来获取SqlSessionFactory的工具类 * @create 2025/10/26 */ public class SqlSessionFactoryUtils { private static SqlSessionFactory sqlSessionFactory; static{ String resource = "mybatis-config.xml"; try { InputStream inputStream = Resources.getResourceAsStream(resource); sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream); } catch (IOException e) { throw new RuntimeException(e); } } /** * 获取Sql会话工厂 * @return */ public static SqlSessionFactory getSqlSessionFactory(){ return sqlSessionFactory; } /** * 获取Sql会话 自动提交事务 * @param autoCommit * @return */ public static SqlSession getSqlSession(boolean autoCommit){ return getSqlSessionFactory().openSession(autoCommit); } /** * 获取Sql会话,手动提交事务 * @return */ public static SqlSession getSqlSession(){ return getSqlSessionFactory().openSession(); } }