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);
······
相关推荐
悟能不能悟5 小时前
redis的红锁
数据库·redis·缓存
涵涵(互关)7 小时前
Maven多模块项目MyMetaObjectHandler自动填充日期未生效
spring·maven·mybatis
安当加密7 小时前
MySQL数据库透明加密(TDE)解决方案:基于国密SM4的合规与性能优化实践
数据库·mysql·性能优化
JH30738 小时前
第七篇:Buffer Pool 与 InnoDB 其他组件的协作
java·数据库·mysql·oracle
板凳坐着晒太阳8 小时前
ClickHouse 配置优化与问题解决
数据库·clickhouse
数据库生产实战8 小时前
解析Oracle 19C中并行INSERT SELECT的工作原理
数据库·oracle
AAA修煤气灶刘哥9 小时前
服务器指标多到“洪水泛滥”?试试InfluxDB?
数据库·后端·面试
阿沁QWQ9 小时前
MySQL服务器配置与管理
服务器·数据库·mysql
程序新视界10 小时前
MySQL“索引失效”的隐形杀手:隐式类型转换,你了解多少?
数据库·mysql·dba
Logintern0911 小时前
windows如何设置mongodb的副本集
数据库·windows·mongodb