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初始化的时候引入映射器。

相关推荐
GIS数据转换器11 分钟前
地下空间综合管廊运营管理平台
大数据·开发语言·人工智能·经验分享·perl
猿究院_夏燊5 小时前
Spring Bean 生命周期
java·后端·spring
Wang's Blog5 小时前
Java 项目实战: 交友项目:登录链路回顾与今日任务地图
java·开发语言·状态模式·交友
信誓旦旦的程序猿6 小时前
【Python量化实战宝典 #08】可转债与债券接口手册:转股价·溢价率·纯债价值(Python 可跑)
java·python·股票数据api·股票数据api接口·股票api数据接口·股票量化数据api·股票量化数据接口
砚底藏山河6 小时前
python量化:行情数据回溯
java·开发语言·python·金融·maven
今年下半年6 小时前
AI智能体项目实战记录(02):初始化 Python 项目
开发语言·人工智能·python·fastapi
Jlzn88886 小时前
华东电芯分选通道数怎么配才不堵线
java·人工智能·架构·自动化·制造
Williamtym6 小时前
PickGo Lab实践:用浏览器、Python和MCP串起机器人搬运仿真
开发语言·python·机器人
香吧香6 小时前
GRPC连接机制---长连接分析
java·网络与传输协议
DongQiShanRen6 小时前
六根硬件映射(四):归属澄清、两处不一致与卷十一总表
开发语言·人工智能·算法·rust·哈希算法·集成学习