1.1 配置顺序
顺序 |
配置标签名称 |
说明 |
1 |
properties |
属性 |
2 |
settings |
配置全局参数 |
3 |
typeAliases |
类型别名 |
4 |
typeHandlers |
类型处理器 |
5 |
objectFactory |
对象工厂 |
6 |
plugins |
插件 |
7 |
environments |
环境集合属性对象 |
8 |
databaseIdProvider |
多数据库支持 |
9 |
mappers |
映射器 |
说明:
|
1.2 properties属性
第一步:通过properties标签,配置连接数据库参数
<?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>
<!--properties 数据库连接配置-->
<properties>
<property name="jdbc.driver" value="com.mysql.jdbc.Driver"></property>
<property name="jdbc.url" value="jdbc:mysql://localhost:3306/mybatis?characterEncoding=utf8"></property>
<property name="jdbc.username" value="root"></property>
<property name="jdbc.password" value="root"></property>
</properties>
<!--数据库环境配置-->
<environments default="mysql">
<environment id="mysql">
<transactionManager type="JDBC"></transactionManager>
<dataSource type="pooled">
<property name="driver" value="com.mysql.jdbc.Driver"></property>
<property name="url" value="jdbc:mysql://localhost:3306/mybatis?characterEncoding=utf8"></property>
<property name="username" value="root"></property>
<property name="password" value="root"></property>
</dataSource>
</environment>
</environments>
<!--2. 加载映射文件-->
<mappers>
<mapper resource="com/sunny/dao/IUserDao.xml"></mapper>
</mappers>
</configuration>
第二步:加载外部的映射文件/properties内部也配置数据库连接参数
jdbc.driver=com.mysql.jdbc.Driver
jdbc.url=jdbc:mysql://localhost:3306/mybatis?characterEncoding=utf8
jdbc.username=root
jdbc.password=root
<?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>
<!--properties 数据库连接配置-->
<!--优先加载jdbc.properties中的配置(以这里的为准)-->
<properties resource="jdbc.properties">
<property name="jdbc.driver" value="com.mysql.jdbc.Driver"></property>
<property name="jdbc.url" value="jdbc:mysql://localhost:3306/mybatis?characterEncoding=utf8"></property>
<property name="jdbc.username" value="root"></property>
<property name="jdbc.password" value="root"></property>
</properties>
<!--数据库环境配置-->
<environments default="mysql">
<environment id="mysql">
<transactionManager type="JDBC"></transactionManager>
<dataSource type="pooled">
<property name="driver" value="com.mysql.jdbc.Driver"></property>
<property name="url" value="jdbc:mysql://localhost:3306/mybatis?characterEncoding=utf8"></property>
<property name="username" value="root"></property>
<property name="password" value="root"></property>
</dataSource>
</environment>
</environments>
<!--2. 加载映射文件-->
<mappers>
<mapper resource="com/sunny/dao/IUserDao.xml"></mapper>
</mappers>
</configuration>
第三步:加载外部的映射文件(resource/url)
2.1 typeAliases标签
- 表示指定别名,简化配置
typeAliases用于起别名字
typeAlias起别名配置,给一个一个类的起别名(不推荐)
type:设置指定类型全名
alias:别名,在映射配置文件中类型只需要使用这个别名,不区分大小写
package,批量给要给包名下所有类起别名,会自动将包下类名作为别名,不区分大小写(推荐)
<!--指定别名,简化配置-->
<typeAliases>
<!--<typeAlias type="com.sunny.entity.User" alias="user"></typeAlias>-->
<package name="com.sunny.entity"></package>
</typeAliases>
3.1 mapper标签
<!--2. 加载映射文件-->
<mappers>
<!--映射com/sunny/dao/IUserDao.xml接口实现配置文件-->
<!--<mapper resource="com/sunny/dao/IUserDao.xml"></mapper>一个一个映射文件加载,不推荐-->
<!--<mapper resource="com/sunny/dao/IUserDao.xml"></mapper>-->
<package name="com.sunny.dao"></package><!--批量加载,推荐使用-->
</mappers>
4.1 总结:
<?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><!--
properties设置配置数据的
属性
resource:引用本项目类路径下的properties文件数据'
url:引用本项目外部properties文件数据,可以访问网络上的
子标签
property:配置内部properties数据
外部和内部可以一起使用,优先使用外部
-->
<properties resource="jdbc.properties" >
<!--数据库连接字符串-->
<property name="jdbc.url" value="jdbc:mysql://localhost:3306/mybatis?characterEncoding=utf8"></property>
<!--username数据库用户名-->
<property name="jdbc.username" value="root"></property>
<!--password数据库密码-->
<property name="jdbc.password" value="root"></property>
</properties><!--
typeAliases用于起别名字
typeAlias起别名配置,给一个一个类的起别名(比推荐)
type:设置指定类型全名
alias:别名,在映射配置文件中类型只需要使用这个别名,不区分大小写
package,批量给要给包名下所有类起别名,会自动将包下类名作为别名,不区分大小写(推荐)
-->
<typeAliases>
<!--<typeAlias type="com.sunny.entity.User" alias="user"></typeAlias>-->
<package name="com.sunny.entity"></package>
</typeAliases><!--environments配置环境数据库使用哪个连接-->
<environments default="mysql">
<!--配置具体连接到哪一个数据库-->
<environment id="mysql">
<!--transactionManager,配置事物控制类型为JDBC-->
<transactionManager type="JDBC"></transactionManager>
<!--配置数据库连接池
POOLED,mybatis内置的数据库连接池(推荐使用)
UNPOOLED,不使用连接池
JNDI,使用服务器tomcat容器的数据库连接池
-->
<dataSource type="POOLED">
<!--mysql驱动类-->
<property name="driver" value="${jdbc.driver}"></property>
<!--数据库连接字符串-->
<property name="url" value="${jdbc.url}"></property>
<!--username数据库用户名-->
<property name="username" value="${jdbc.username}"></property>
<!--password数据库密码-->
<property name="password" value="${jdbc.password}"></property>
</dataSource>
</environment></environments>
<!--关联接口映射配置文件-->
<mappers>
<!--映射com/sunny/dao/IUserDao.xml接口实现配置文件-->
<!-- <mapper resource="com/sunny/dao/IUserDao.xml"></mapper>一个一个映射文件加载,不推荐-->
<!--将这个包名下所有映射文件自动加载-->
<package name="com.sunny.dao"></package><!--批量加载,推荐使用-->
</mappers>
</configuration>