创建工具类之获取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();
}
相关推荐
项目題供诗几秒前
ai大模型(三)
java
weixin_3077791318 分钟前
C++代码实现MATLAB中的spectralcluster函数功能
开发语言·c++·算法·matlab
鸽鸽程序猿18 分钟前
【项目】【在线判题系统】c端:竞赛报名
c语言·开发语言
wangjialelele19 分钟前
一文梳理 Spring Cloud 核心组件:Eureka、Nacos、OpenFeign、LoadBalancer 与 Gateway
java·spring boot·spring·spring cloud·微服务·nacos
用户62228840481922 分钟前
站在JDK的角度理解线程池:从execute 到 getTask 一篇讲透
java·面试
Wang's Blog22 分钟前
Java 项目实战: 交友项目 - 个人资料管理的需求分析与接口设计
java·开发语言·交友
北风toto25 分钟前
Linux 服务器如何判断 CPU 是否支持 x86-64-v2 指令集
java·linux·服务器
1024奇点27 分钟前
【仓颉语言入门 · 第二篇 第 8 课】
开发语言·数据库·ide·mysql·开源
萧瑟余晖29 分钟前
Spring Security综合实战与安全加固详解
java·安全·spring
gopher951141 分钟前
RUST:序列化与反序列化 serde + derive 详解
开发语言·后端·rust