MyBatis基础配置

一、M y B a t i s 配 置 文 件

MyBatis配置文件的功能:构建SqlSessionFactory的依据

MyBatis配置文件的意义:MyBatis最为核心的内容,对MyBatis的使用影响很大。

MyBatis配置文件注意事项:配置文件的层次顺序不能颠倒,一旦颠倒会出现异常。

1.什么是MyBatis配置文件
2.配置文件的层级结构

二、 < c o n f i g u r a t i o n > 元素

功能:

标识配置文件的起始,所有配置信息都存放在这里。

三、< e n v i r o m e n t s > 元 素

功能

配置数据库环境信息,注册数据源, 配置数据库事务。

四、 <environments>元素的结构

1.default属性:默认使用的数据库环境

2. <environment> 单个数据库环境信息的标识

2.1 <transactionManager> 配置数据库事务

**<transactionManager>**数据库事务(的type属性)

|---------|------------------------------------------------------------------------------------|
| JDBC | 使用 JDBC 的事务管理机制,就 是利用 java.sql.Connection 对 象完成对事务的提交; |
| MANAGED | 使用 MANAGED 的事务管理机 制,这种机制 MyBatis 自身不 会去实现事务管理,而是让程序 的容器(JBOSS,WebLogic)来 实现对事务的管理; |
| 自定义 | 由使用者自定义数据库事务的管 理方式,适用于特殊应用。 |

3.<dataSource> 配置环境信息中数据源连接的信息。

**<dataSource>**数据源(的type属性)

|----------|----------|
| UNPOOLED | 非连接池的数据源 |
| POOLED | 连接池的数据源 |
| JNDI | JNDI的数据源 |
| 自定义数据源 | 其他类型数据源 |

4.<property> 配置环境信息的属性

五、< p r o p e r t i e s > 元 素

1. <properties>元素的功能

配置属性的元素,可以在配置文件的上下文中使用 该属性。

2. <properties>元素的结构
2.1properties 配置文件
复制代码
jdbc.driver=com.mysql.cj.jdbc.Driver
jdbc.url=jdbc:mysql://localhost:3306/schoolp?serverTimezone=GMT
jdbc.username=root
jdbc.password=123456
2.2程序参数传递
复制代码
properties.setProperty("driver",decode( properties.get( " driver")));
properties.setProperty("url", decode(properties.get("ur1")));
properties.setProperty( " username",decode( properties.get( "username" )));
properties.setProperty(" password", decode(properties.get(" password")));
2.3 property 子元素
复制代码
<property name="driver" value="${jdbc.driver}" />
<property name="url" value="${jdbc.url}" />
<property name="username" value="${jdbc.username}" />
<property name="password" value="${jdbc.password}" />
3. <properties>元素外部文件配置
4.使用建议
  • 不要使用混合方式,以避免管理混乱
  • 首选的方式是 Properties 文件方式
  • 如存在加密或者安全访问的问题,使用第二种方式,为日后统一管理提供方便

六、< t y p e A l i a s e s > 元 素

1.< typeAliases > 元素的功能

Mybatis内部支持的别名:

2.< typeAliases > 元素的功能

我们使用Mybatis 需要将查询的虚拟表映射为java中的实体类的对象,就需 要让Mybatis知道这些我们自定义的"类型"。

3.< typeAliases > 元素的功能

在主配置文件中进行配置

在sqlMapper.xml 中可以使用类名

七、< m a p p e r s > 元素

<mappers>元素的功能:用来在MyBatis初始化的时候引入映射器。

**<mappers>**层次结构:

相对路径引入映射器:

用文件定位符引入映射器:

注册指定包下的所有mapper接口:

注意:此种方法要求mapper接口名称和mapper映射文件名称相同,且放在同 一个目录中。

总结:

• MyBatis 配置文件的功能

• 构建 SqlSessionFactory 的依据,对整个MyBatis体系影响深远;

• <properties>元素的功能

• 配置属性的元素,可以在配置文件的上下文中使用该属性;

•<enviroments> 元素的功能

• 配置环境信息,注册数据源,配置数据库事务;

• <mappers>元素的功能

• 用来在MyBatis初始化的时候引入映射器。

相关推荐
864记忆13 小时前
Spring Boot 项目标准目录结构
java
编码追梦人13 小时前
深耕 Rust:核心技术解析、生态实践与高性能开发指南
开发语言·后端·rust
2301_7720935614 小时前
KVSTORE_Pain point_tuchuang_ROS2
java·开发语言·1024程序员节
刘火锅14 小时前
Java 17 环境下 EasyPoi 反射访问异常分析与解决方案(ExcelImportUtil.importExcelMore)
java·开发语言·python
朝新_14 小时前
【SpringBoot】详解Maven的操作与配置
java·spring boot·笔记·后端·spring·maven·javaee
西部风情14 小时前
聊聊连续、递增
java·开发语言
蒙娜丽宁14 小时前
Rust 并发编程进阶:线程模型、通道通信与异步任务对比分析
开发语言·网络·rust
Mcband14 小时前
IDEA Debug高阶技巧
java·ide·intellij-idea
又是忙碌的一天15 小时前
java字符串
java·开发语言
Hi2024021715 小时前
Qt+Qml客户端和Python服务端的网络通信原型
开发语言·python·qt·ui·网络通信·qml