创建工具类之获取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();
}
相关推荐
bug攻城狮15 小时前
SpringBoot 脚手架搭建指南:从零构建企业级开发框架
java·spring boot·后端·架构·系统架构·设计规范
问水っ15 小时前
Qt Creator快速入门 第三版 第四章 布局管理
开发语言·qt·学习
格林威15 小时前
工业相机图像高速存储(C++版):直接IO存储方法,附Basler相机实战代码!
开发语言·c++·人工智能·数码相机·计算机视觉·视觉检测·工业相机
wind52015 小时前
差分包技术
开发语言·node.js·安装·web app·openclaw·龙虾
人道领域15 小时前
【苍穹外卖】深度解析:商品浏览四大核心接口设计(附完整数据流转图)
java·数据库·后端·sql
灰阳阳15 小时前
Docker-镜像-命令清单
java·docker·eureka
青衫码上行15 小时前
【项目开发日记 | 根据业务流程产出前后端交互文档】第二天
java·团队开发
JuneXcy15 小时前
node(2)
开发语言·前端·javascript·http·node.js
m0_7166670715 小时前
嵌入式C++驱动开发
开发语言·c++·算法
代码探秘者15 小时前
【Spring框架】彻底理解 Spring 单例线程安全
java·安全·spring