Mybatis配置文件注意事项
要注意顺序问题
Mybatis配置文件中各标签的位置顺序如下:
properties, settings,
typeAliases, typeHandlers,
objectFactory,objectWrapperFactory,
plugins,
environments, databaseIdProvider, mappers
错误顺序
<?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="dbConfig.properties"></properties>
<environments default="development">
<environment id="development">
<transactionManager type="JDBC" />
<dataSource type="POOLED">
<property name="driver" value="${driver}" />
<property name="url" value="${url}" />
<property name="username" value="${dbuser}" />
<property name="password" value="${dbpassword}" />
</dataSource>
</environment>
</environments>
<mappers>
<mapper resource="com/apps/dao/RemainDao.xml"/>
<mapper resource="com/apps/dao/WorkSpaceDao.xml"/>
</mappers>
//此处顺序错误
<typeAliases>
<typeAlias type="com.apps.domain.Remian" alias="Remian"/>
<typeAlias type="com.apps.domain.WorkSpace" alias="WorkSpace"/>
</typeAliases>
</configuration>
正确顺序
<?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="dbConfig.properties"></properties>
//此处顺序正确
<typeAliases>
<typeAlias type="com.apps.domain.Remian" alias="Remian"/>
<typeAlias type="com.apps.domain.WorkSpace" alias="WorkSpace"/>
</typeAliases>
<environments default="development">
<environment id="development">
<transactionManager type="JDBC" />
<dataSource type="POOLED">
<property name="driver" value="${driver}" />
<property name="url" value="${url}" />
<property name="username" value="${dbuser}" />
<property name="password" value="${dbpassword}" />
</dataSource>
</environment>
</environments>
<mappers>
<mapper resource="com/apps/dao/RemainDao.xml"/>
<mapper resource="com/apps/dao/WorkSpaceDao.xml"/>
</mappers>
</configuration>
原因
match "(properties?,settings?,typeAliases?,typeHandlers?,objectFactory?,
objectWrapperFactory?,plugins?,environments?,databaseIdProvider?,mappers?)".