SqlSessionFactoryUtils.java 1.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455
  1. package com.sf.util;
  2. import org.apache.ibatis.io.Resources;
  3. import org.apache.ibatis.session.SqlSession;
  4. import org.apache.ibatis.session.SqlSessionFactory;
  5. import org.apache.ibatis.session.SqlSessionFactoryBuilder;
  6. import java.io.IOException;
  7. import java.io.InputStream;
  8. /**
  9. * @author WanJl
  10. * @version 1.0
  11. * @title SqlSessionFactoryUtils
  12. * @description 用来获取SqlSessionFactory的工具类
  13. * @create 2025/10/26
  14. */
  15. public class SqlSessionFactoryUtils {
  16. private static SqlSessionFactory sqlSessionFactory;
  17. static{
  18. String resource = "mybatis-config.xml";
  19. try {
  20. InputStream inputStream = Resources.getResourceAsStream(resource);
  21. sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream);
  22. } catch (IOException e) {
  23. throw new RuntimeException(e);
  24. }
  25. }
  26. /**
  27. * 获取Sql会话工厂
  28. * @return
  29. */
  30. public static SqlSessionFactory getSqlSessionFactory(){
  31. return sqlSessionFactory;
  32. }
  33. /**
  34. * 获取Sql会话 自动提交事务
  35. * @param autoCommit
  36. * @return
  37. */
  38. public static SqlSession getSqlSession(boolean autoCommit){
  39. return getSqlSessionFactory().openSession(autoCommit);
  40. }
  41. /**
  42. * 获取Sql会话,手动提交事务
  43. * @return
  44. */
  45. public static SqlSession getSqlSession(){
  46. return getSqlSessionFactory().openSession();
  47. }
  48. }