# 3.MyBatis-核心配置文件
# 1.property
动态给property中的value赋值,方便切换环境
<environments default="development">
<environment id="development">
<transactionManager type="JDBC"/>
<dataSource type="POOLED">
<property name="driver" value="com.mysql.jdbc.Driver"/>
<property name="url" value="jdbc:mysql://localhost:3306/test"/>
<property name="username" value="root"/>
<property name="password" value="1234"/>
</dataSource>
</environment>
</environments>
1
2
3
4
5
6
7
8
9
10
11
2
3
4
5
6
7
8
9
10
11
创建jdbc.properties
jdbc.driver=com.mysql.jdbc.Driver
jdbc.url=jdbc:mysql://localhost:3306/test
jdbc.username=root
jdbc.password=1234
1
2
3
4
2
3
4
在配置文件中引入并使用
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE configuration
PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
"https://mybatis.org/dtd/mybatis-3-config.dtd">
<configuration>
<properties resource="jdbc.properties"/>
<!-- 配置数据库环境 -->
<environments default="development">
<environment id="development">
<transactionManager type="JDBC"/>
<dataSource type="POOLED">
<property name="driver" value="${jdbc.driver}"/>
<property name="url" value="${jdbc.url}"/>
<property name="username" value="${jdbc.username}"/>
<property name="password" value="${jdbc.password}"/>
</dataSource>
</environment>
</environments>
<!-- 引入映射文件 -->
<mappers>
<mapper resource="mappers/UserMapper.xml"/>
</mappers>
</configuration>
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
# 2.typeAliases
注意:配置文件中标签的顺序
(properties?,settings?,typeAliases?,typeHandlers?,objectFactory?,objectWrapperFactory?,reflectorFactory?,plugins?,environments?,databaseIdProvider?,mappers?)".
1.介绍
typeAliases用于将全类名起别名,减少编码
2.使用
配置mybatis-config(三种方式)
<typeAliases>
<typeAlias type="com.demo.pojo.User" alias="User"/>
<typeAlias type="com.demo.pojo.User"/>
<package name="com.demo.pojo"/>
</typeAliases>
1
2
3
4
5
2
3
4
5
修改UserMapper.xml中resultType
<select id="selectAllUser" resultType="User">
select * from t_user
</select>
1
2
3
2
3
3.解释
方式1:
直接起别名
方式2:<typeAlias type="com.demo.pojo.User>
自动起别名为User,并且不区分大小写,即user,User,USer等均可
方式3:
类似于方式2,只不过是整个包的类的别名均为自己的类名,不区分大小写
# 3.mappers
<mappers>
<mapper resource="mappers/UserMapper.xml"/>
</mappers>
1
2
3
2
3
像上面这种,一个一个引入映射文件,如果映射文件太多代码会特别冗余,所以我们可以以包为单位引入映射文件。
引入时注意以下两点:
mapper接口所在的包和映射文件所在的包一致
mapper接口要和映射文件的名字一致
示例:
<mappers>
<!-- <mapper resource="mappers/UserMapper.xml"/>-->
<package name="com.demo.mapper"/>
</mappers>
1
2
3
4
2
3
4