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);
······
相关推荐
m0_653031361 分钟前
PostgreSQL技术大讲堂 - 第97讲:PG数据库编码和区域(locale)答疑解惑
数据库·postgresql
会编程的林俊杰19 分钟前
MySQL中的锁有哪些
数据库·mysql
cts61821 分钟前
Milvus分布式数据库工作职责
数据库·分布式·milvus
周胡杰21 分钟前
鸿蒙加载预置数据库-关系型数据库-如何读取本地/预制数据库
数据库·华为·harmonyos·鸿蒙
布朗克16825 分钟前
java常见的jvm内存分析工具
java·jvm·数据库
胡八一32 分钟前
SQLite / LiteDB 单文件数据库为何“清空表后仍占几 GB”?——原理解析与空间回收实战
jvm·数据库·sqlite
2401_831501732 小时前
Linux之Zabbix分布式监控篇(二)
数据库·分布式·zabbix
秋林辉3 小时前
Jfinal+SQLite处理 sqlite数据库执行FIND_IN_SET报错
jvm·数据库·sqlite
巴里巴气6 小时前
MongoDB复杂查询 聚合框架
数据库·mongodb
scheduleTTe9 小时前
SQL增查
数据库·sql