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:懒羊羊

相关推荐
多多*4 小时前
一个有 IP 的服务端监听了某个端口,那么他的 TCP 最大链接数是多少
java·开发语言·网络·网络协议·tcp/ip·缓存·mybatis
Kay_Liang4 小时前
Spring IOC核心原理与实战技巧
java·开发语言·spring boot·spring·ioc·依赖注入·控制反转
张3蜂4 小时前
import org.junit.Test; 是什么
数据库·junit
LSL666_4 小时前
Spring 框架整合 JUnit 单元测试——包含完整执行流程
spring·junit·log4j
Mr.wangh4 小时前
单例模式&阻塞队列详解
java·开发语言·单例模式·多线程·阻塞队列
查老师4 小时前
就为这一个简单的 Bug,我搭上了整整一个工作日
后端·程序员
Slow菜鸟4 小时前
Java后端常用技术选型 |(三)分布式篇
java·分布式
q***9945 小时前
Spring Boot 实战:轻松实现文件上传与下载功能
java·数据库·spring boot
张较瘦_5 小时前
[论文阅读] 软件工程 | 解决Java项目痛点:DepUpdater如何平衡依赖升级的“快”与“稳”
java·开发语言·论文阅读
老华带你飞5 小时前
记录生活系统|记录美好|健康管理|基于java+Android+微信小程序的记录生活系统设计与实现(源码+数据库+文档)
android·java·数据库·vue.js·生活·毕设·记录生活系统