1.结构
配置的属性顺序不能错
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE configuration
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-config.dtd">
<configuration>
<!-- 属性
1.外部文件
2.子元素-->
<properties resource="db.properties">
<property name="" value=""/>
</properties>
<settings>
<setting name="jdbcTypeForNull" value="NULL"/>
</settings>
<!-- 类型别名-->
<typeAliases>
<typeAlias type="Article" alias="article"></typeAlias>
<!-- 通过包形式设置别名 首字母小写作为别名-->
<package name="com.xxx.entity"/>
</typeAliases>
<!-- 类型处理器-->
/**
* 自定义类型转化器
* 1.实现TypeHandler
* 2.继承BaseTypeHandler
*/
<typeHandlers>
<typeHandler handler="MyHandler" javaType="String" jdbcType="VARCHAR"></typeHandler>
<!-- 自动扫包注册-->
<package name="com.xxx.handler"/>
</typeHandlers>
<!-- 对象工厂
自定义ObjectFactory
实现ObjectFactory接口
继承DefaultObjectFactory
-->
<objectFactory type="com.xxx.EntityObjectFactory"></objectFactory>
<!-- mybatis运行环境
不同环境可以操作不同数据库-->
<environments default="development">
<environment id="development">
<!--事务管理器
JDBC: 直接使用JDBC的提交和回滚设置,依赖从数据源获取的连接来管理事务作用域
MANAGED: 不提交或回滚一个连接,让容器来管理事务整个生命周期-->
<transactionManager type="JDBC"></transactionManager>
<!--数据源
UNPOOLED: 非连接池类型,每次请求时才打开关闭连接
POOLED: 连接池
JNDI: 在EJB或应用服务器之类的容器使用
-->
<dataSource type="POOLED">
<property name="driver" value="${driver}"/>
<property name="url" value="${url}"/>
<property name="username" value="${username}"/>
<property name="password" value="${password}"/>
</dataSource>
</environment>
</environments>
<mappers>
<!-- 注册Mapper-->
<mapper resource="mapper/ArticleMapper.xml"></mapper>
<mapper resource="mapper/StudentMapper.xml"></mapper>
<mapper resource="mapper/StuClassMapper.xml"></mapper>
<package name="com.xxx.mapper"/>
</mappers>
</configuration>
2.setting配置