Mybatis工具类

前提:已经配置好mybatis的环境。(核心配置文件、mapper映射、实体类、数据库、mapper接口)

工具类:

java 复制代码
public class MybatisUtil {

    private static SqlSessionFactory sqlSessionFactory = null;
    private static String xmlPath = "";//mybatis核心配置文件

    private MybatisUtil(){}

    static {
        try {
            InputStream inputStream = Resources.getResourceAsStream(xmlPath);
            sqlSessionFactory  = new SqlSessionFactoryBuilder().build(inputStream);
        } catch (IOException e) {
            throw new RuntimeException(e);
        }

    }

    public static SqlSession openSession(){
        return  sqlSessionFactory.openSession();
    }//手动提交事务,默认。

    public static SqlSession openSession(Boolean flag){
        return  sqlSessionFactory.openSession(flag);
    }//自动提交事务

    public static void closeSqlSession(SqlSession sqlSession){
        if (sqlSession!=null){
            sqlSession.close();
        }
    }//自动提交事务,true时为自动开启事务

    public static void dateRoolBack(SqlSession sqlSession){
        if (sqlSession!=null){
            sqlSession.rollback();
        }
    }

       public static void dateCommit(SqlSession sqlSession){
        if (sqlSession!=null){
            sqlSession.commit();
        }
    }
}

使用:

java 复制代码
 SqlSession sqlSession= MybatisUtil.openSession();
Mapper接口  mapper接口对象 =  sqlSession.getMapper(Mapper接口.class);
······
相关推荐
切糕师学AI4 分钟前
HBase:一文搞懂分布式宽列数据库(原理 + 架构 + 实战)
数据库·分布式·nosql·hbase·分布式宽列数据库·wide column db
competes8 分钟前
慈善基金投资底层逻辑应用 顶层代码低代码配置平台开发结构方式数据存储模块
java·开发语言·数据库·windows·sql
qq_3729069338 分钟前
如何在 Vuetify 中可靠捕获 Chip 关闭事件(包括键盘触发)
jvm·数据库·python
lcj092466641 分钟前
磁控U位管理系统与DCIM对接实现:筑牢数据中心精细化运维底座
大数据·数据库·人工智能
独自归家的兔1 小时前
OCPP 1.6 协议详解:StatusNotification 状态通知指令
开发语言·数据库·spring boot·物联网
qq_372154232 小时前
SQL嵌套查询中常见报错排查_语法与权限处理
jvm·数据库·python
0xDevNull2 小时前
MySQL 别名(Alias)指南:从入门到避坑
java·数据库·sql
2401_887724503 小时前
CSS如何设置文字溢出显示省略号_利用text-overflowellipsis
jvm·数据库·python
m0_747854523 小时前
golang如何实现应用启动耗时分析_golang应用启动耗时分析实现思路
jvm·数据库·python
雪碧聊技术3 小时前
下午题_试题二
数据库