MyBatis框架学习Ⅳ
全局配置文件学习
property属性学习
将原有的配置文件用db.properties文件形式进行配置
创建db.properties文件进行配置
在resource目录中创建db.properties文件
db.driver = com.mysql.jdbc.Driver
db.url = jdbc:mysql://localhost:3306/ee19_batis_day03?useUnicode=true&characterEncoding=utf-8
db.username = root
db.password = 123
全局变量更改之后:
<?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="db.properties">
</properties>
<environments default="development">
<environment id="development">
<!-- 配置JDBC事务控制,由mybatis进行管理 -->
<transactionManager type="JDBC"></transactionManager>
<!-- 配置数据源,采用mybatis连接池 -->
<dataSource type="POOLED">
<property name="driver" value="${db.driver}" />
<property name="url" value="${db.url}" />
<property name="username" value="${db.username}" />
<property name="password" value="${db.password}" />
</dataSource>
</environment>
</environments>
</configuration>
也可以复写配置文件里的属性
注意
先加载全局配置文件中的property标签
后加载db.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 resource="db.properties">
</properties>
<!-- 别名设置 -->
<typeAliases>
<typeAlias type="test.User" alias="user"></typeAlias>
</typeAliases>
<environments default="development">
<environment id="development">
<!-- 配置JDBC事务控制,由mybatis进行管理 -->
<transactionManager type="JDBC"></transactionManager>
<!-- 配置数据源,采用mybatis连接池 -->
<dataSource type="POOLED">
<property name="driver" value="${db.driver}"/>
<property name="url" value="${db.url}"/>
<property name="username" value="${db.username}"/>
<property name="password" value="${db.password}"/>
</dataSource>
</environment>
</environments>
<!-- 加载映射文件 -->
<mappers>
<mapper resource="User.xml"/>
<mapper resource="mapper/UserMapper.xml"></mapper>
</mappers>
</configuration>
可能存在的异常
多个别名设置
批量加载映射文件
需要将mapper接口和xml文件放在同一个包下
SqlMapConfig.xml
<!-- 加载映射文件 -->
<mappers>
<package name="mapper"></package>
</mappers>