创建工具类之获取SqlSession

我们在编写后端程序时,每次想运行一个SQL语句,就需要创建一个SqlSession,因此我们可以封装一个方法,来简化我们的操作。

一般我们需要先在src/main/java下建立一个utils包,专门用来存放各种方法。后期我们还需要其他的工具类都可以在此地编写。然后写好下面代码:

java 复制代码
public class MybatisUtils {
    private static SqlSessionFactory sqlSessionFactory = null;
    static {     //静态代码段
        try{
            Reader reader = Resources.getResourceAsReader("mybatis-config.xml");  //先创建一个流
            sqlSessionFactory = new SqlSessionFactoryBuilder().build(reader);     //读取配置文件,创建工厂
        } catch (IOException e) {
            e.printStackTrace();
        }
    }

    //整个过程只需要一个Sqlsession工厂,而每次进行SQL语句的执行,需要一个新的session。
    public static SqlSession getSession(){
        return sqlSessionFactory.openSession();   //用工厂创建session
    }
}

一般在执行时如下:

java 复制代码
try (SqlSession session = MybatisUtils.getSession()) {
    // 执行 SQL 操作
    session.commit(); // 如果需要手动提交事务
    session.close();  //手动关闭
} catch (Exception e) {
    e.printStackTrace();
}
相关推荐
hsjiasb2 小时前
FreeRTOS学习(二十七)——任务栈与栈溢出检测
开发语言·stm32·学习·学习笔记·freertos
丰锋ff2 小时前
3.1 Qt事件之事件处理器
开发语言·qt
多弗朗皮卡丘3 小时前
C语言梦开始的地方7:函数
c语言·开发语言
mldong3 小时前
"applicant" 契约:退回发起人的闭环设计
java·架构
月华路3 小时前
G1 垃圾回收:脏卡队列、记忆集与并发精化线程机制
java·开发语言
gugucoding4 小时前
47. 【Java】Java内存模型(JMM)与可见性
java·开发语言
m0_380743874 小时前
从零调用 Claude 教程
开发语言·python·node.js
起床学FPGA4 小时前
AI回答问题之后,会自动跳到最下面的问题
开发语言·javascript·ecmascript
zww89491114 小时前
校园跑腿系统开发实战指南:从需求分析到上线部署全流程解析
java
Fluxart.ai4 小时前
电商商品图审核怎么自动化?规则引擎、人工复核与发布门禁
java·前端·自动化