IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 大数据 -> Mybatis配置解析:核心配置文件及其相关配置条目、核心部件生命周期 -> 正文阅读

[大数据]Mybatis配置解析:核心配置文件及其相关配置条目、核心部件生命周期

配置解析

核心配置文件

mybatis-config.xml
在这里插入图片描述

环境变量

①一个SqlSession只能使用一套环境
在这里插入图片描述
①transactionManager事务管理器:JDBC/MANAGED
②dataSource数据源:UNPOOLED/POOLED(数据库连接池)/JNDI
③property属性:读取数据库属性

Properties属性

编写配置文件:db.properties

driver=com.mysql.jdbc.Driver
url=jdbc:mysql://localhost:3306/mysql?useSSL=false&useUnicode=true&characterEncoding=UTF-8
username=root
password=root

在核心配置文件中引入

<!--引入外部配置文件-->
    <properties resource="db.properties">
    <!--此处可以用property内部设置参数,优先级低于外部-->
    </properties>

    <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="${password}"/>
            </dataSource>
        </environment>
    </environments>

注:相同参数优先级:优先使用外部配置文件

类型别名

    <select id="getUserList" resultType="com.lms.pojo.User">
        select * from user;
    </select>

先前返回值类型需要如上书写,需要完整路径,类型别名就是用于将其改为设置短的名字

单标签别名:

<!--单标签别名-->
    <typeAliases>
        <typeAlias type="com.lms.pojo.User" alias="User"/>
    </typeAliases>

扫描包内生成别名:

<!--包内别名-->
    <typeAliases>
        <package name="com.lms.pojo"/>
    </typeAliases>

默认为类名首字母小写,可用注解具体起名

设置

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

映射器

MapperRegistry:每个Mapper.xml都需要在核心配置文件中注册
方式一:

    <mappers>
        <mapper resource="com/lms/dao/UserMapper.xml"/>
    </mappers>

方式二:

	<mappers>
        <mapper class="com.lms.dao.UserMapper"/>
    </mappers>

注:接口和Mapper配置文件必须同名且同一包下

方式三:

	<mappers>
        <package name="com.lms.dao"/>
    </mappers>

和方式二注意点相同

生命周期

**SqlSessionFactoryBuilder:**创建工厂后不再使用;故常用作局部变量
**SqlSessionFactory:**类似数据库连接池,创建后应一直存在;故常用单例或静态单例模式(一个Factory创建多个SqlSession)
**SqlSession:**相当于连接到连接池的请求,请求需要开启/关闭,该实例线程不安全,不能被共享;故常用在方法内的局部变量,用完即关闭(一个SqlSession可以映射多个Mapper即一个具体业务)

  大数据 最新文章
实现Kafka至少消费一次
亚马逊云科技:还在苦于ETL?Zero ETL的时代
初探MapReduce
【SpringBoot框架篇】32.基于注解+redis实现
Elasticsearch:如何减少 Elasticsearch 集
Go redis操作
Redis面试题
专题五 Redis高并发场景
基于GBase8s和Calcite的多数据源查询
Redis——底层数据结构原理
上一篇文章      下一篇文章      查看所有文章
加:2022-05-05 11:25:14  更:2022-05-05 11:28:32 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/24 0:39:45-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码