Mybatis框架配置文件收录总结(详解附代码版)

Mybatis框架配置收录(详解版)

MybatisUtils详细配置说明

java 复制代码
package com.lanyy.utils;

//import javax.annotation.Resource;

import org.apache.ibatis.io.Resources;
import org.apache.ibatis.session.SqlSession;
import org.apache.ibatis.session.SqlSessionFactory;
import org.apache.ibatis.session.SqlSessionFactoryBuilder;

import java.io.IOException;
import java.io.InputStream;

// 第一步创建工具类 sqlSessionFactory 工厂类是来构建 sqlSession
public class MybatisUtils {
    private static SqlSessionFactory sqlSessionFactory;

    static {
        try {
            // 第二步去resources 目录下写配置文件mybatis-config.xml
            String resource = "mybatis-config.xml";
            // 构建sqlSessionFactory对象,并引入mybatis配置文件
            InputStream inputStream = Resources.getResourceAsStream(resource);
            // 通过SqlSessionFactoryBuilder方法生成sqlSessionFactory对象
            sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream);
        } catch (IOException e)
        // 使用mybatis必须完成的一步,加载配置文件,获取sqlSessionFactory对象
//        String resource = "mybatis-config.xml";
//        InputStream input = Resource.getResourceAsStream(resource);
//        sqlSessionFactory sqlsession= new SqlSessionFactoryBuilder().build(input);

        {
            e.printStackTrace();
        }
    }
    // 获取sqlSession对象连接
    public static SqlSession getSqlSession() {
        return sqlSessionFactory.openSession();
    }
}

MybatisUtils简化配置说明

java 复制代码
package com.lanyy.utils;

import org.apache.ibatis.io.Resources;
import org.apache.ibatis.session.SqlSession;
import org.apache.ibatis.session.SqlSessionFactory;
import org.apache.ibatis.session.SqlSessionFactoryBuilder;

import java.io.IOException;
import java.io.InputStream;

//sqlSessionFactory --> sqlSession
public class MybatisUtils {

    private static SqlSessionFactory sqlSessionFactory;

    static{
        try {
            //使用Mybatis第一步:获取sqlSessionFactory对象
            String resource = "mybatis-config.xml";
            InputStream inputStream = Resources.getResourceAsStream(resource);
            sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream);
        } catch (IOException e) {
            e.printStackTrace();
        }

    }

    public static SqlSession  getSqlSession(){
        return sqlSessionFactory.openSession(true);
    }

}

MybatisUtils自动提交数据库增删改事务配置

java 复制代码
package com.lanyy.utils;

//import javax.annotation.Resource;

import org.apache.ibatis.io.Resources;
import org.apache.ibatis.session.SqlSession;
import org.apache.ibatis.session.SqlSessionFactory;
import org.apache.ibatis.session.SqlSessionFactoryBuilder;

import java.io.IOException;
import java.io.InputStream;

// 第一步 实例化创建工具类 sqlSessionFactory 工厂类构造器
// 生成配置文件流XMLConfigBuilder传递所有配置信息至Configuration
// 经executor执行器创建 sqlSession
public class MybatisUtils {
    private static SqlSessionFactory sqlSessionFactory;

    static {
        try {
            // 第二步去resources 目录下写配置文件mybatis-config.xml
            String resource = "mybatis-config.xml";
            // 构建sqlSessionFactory对象,并引入mybatis配置文件
            InputStream inputStream = Resources.getResourceAsStream(resource);
            // 通过SqlSessionFactoryBuilder方法生成sqlSessionFactory实例化对象
            sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream);
        } catch (IOException e)
        // 使用mybatis必须完成的一步,加载配置文件,获取sqlSessionFactory对象
//        String resource = "mybatis-config.xml";
//        InputStream input = Resource.getResourceAsStream(resource);
//        sqlSessionFactory sqlsession= new SqlSessionFactoryBuilder().build(input);

        {
            e.printStackTrace();
        }
    }
    // 获取sqlSession对象连接
    // 设置自动提交事务功能()内改为true,默认为false空白()
    public static SqlSession getSqlSession() {
        return sqlSessionFactory.openSession(true);
    }
}

db.properties配置详情

java 复制代码
driver=com.mysql.jdbc.Driver
url=jdbc:mysql://localhost:3306/mybatis?useSSL=true&useUnicode=true&characterEncoding=UTF-8
username=root
pwd=root

mybatis-config.xml配置详情

xml 复制代码
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE configuration
        PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
        "http://mybatis.org/dtd/mybatis-3-config.dtd">
<!--configuration核心配置文件-->
<configuration>

    <!--引入外部配置文件-->
    <properties resource="db.properties"/>

    <settings>
        <!--标准的日志工厂实现-->
        <setting name="logImpl" value="STDOUT_LOGGING"/>
    </settings>

    <!--可以给实体类起别名-->
    <typeAliases>
        <package name="com.lanyy.pojo"/>
    </typeAliases>

    <environments default="development">
        <environment id="development">
            <transactionManager type="JDBC"/>
            <dataSource type="POOLED">
                <property name="driver" value="${driver}"/>
                <property name="url" value="${url}"/>
                <property name="username" value="${username}"/>
                <property name="password" value="${pwd}"/>
            </dataSource>
        </environment>
    </environments>

    <mappers>
        <mapper class="com.lanyy.dao.TeacherMapper"/>
        <mapper class="com.lanyy.dao.StudentMapper"/>
    </mappers>
</configuration>

了解更多知识请戳下:

@Author:懒羊羊

相关推荐
张np6 分钟前
java基础-Vector(向量)
java
光头程序员6 分钟前
学习笔记——常识解答之垃圾回收机制
java·笔记·学习
渡我白衣20 分钟前
并行的野心与现实——彻底拆解 C++ 标准并行算法(<execution>)的模型、陷阱与性能真相
java·开发语言·网络·c++·人工智能·windows·vscode
czlczl2002092521 分钟前
SpringBoot中web请求路径匹配的两种风格
java·前端·spring boot
bigdata-rookie23 分钟前
Scala 泛型
开发语言·后端·scala
开心猴爷24 分钟前
HTTPS Everywhere 时代的抓包挑战,从加密流量解析到底层数据流捕获的全流程方案
后端
bill44725 分钟前
BPMN2.0,flowable工作流指向多节点,并且只能选择其中一个节点的处理方式
java·工作流引擎·bpmn
2022.11.7始学前端28 分钟前
n8n第四节 表单触发器:让问卷提交自动触发企微消息推送
java·前端·数据库·n8n
Catcharlotte31 分钟前
异常(3)
java
卓码软件测评31 分钟前
【第三方CNAS软件测试机构:Gatling中的资源监控_实时收集服务器CPU、内存、磁盘I/O和网络指标】
后端·测试工具·测试用例·scala·压力测试