mybatis配置文件

Posted zhazhawei906

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mybatis配置文件相关的知识,希望对你有一定的参考价值。

mybatis需要创建一个配置文件放在resource下面,一般命名为mybatis-config.xml
下面是配置文件中的代码

<?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>
<!--配置连接数据库的环境-->
<environments default="development">
<environment id="development">
<transactionManager type="JDBC"/>
<dataSource type="POOLED">
<property name="driver" value="com.mysql.cj.jdbc.Driver"/><!--设置连接的驱动-->
<property name="url" value="jdbc:mysql://localhost:3306/ssm?serverTimezone=UTC"/><!--设置连接数据库的地址-->
<property name="username" value="root"/><!--设置连接数据库的用户名-->
<property name="password" value="123456"/><!--设置连接数据库用户名的密码-->
</dataSource>
</environment>
</environments>

<!--引入mybatis的映射文件-->
<!--sql语句是写入映射文件的,通过这个大的配置文件去访问映射文件来调用里面的sql语句-->
<mappers>
<mapper resource="org/mybatis/example/BlogMapper.xml"/>
</mappers>
</configuration>

mybatis报Mapper配置文件出错

参考技术A

最近学习mybatis框架时,遇到一坑,记录一下debug过程。

操作表一对一查询时,运行junit测试类时报错如下:

根据错误提示,第一时间检查了mapper的xml文件名称以及对应的包名是否跟dao接口类的一致,确认没有问题后,初步判定原因是 mapper映射文件问题 ,mapper内容如下:

随后检查mapper文件中返回类型以及实体类属性、数据表对应字段,发现应该是由于resultMap定义的返回类型有问题,于是检查mybatis主配置文件

果不其然,调试后明确问题:
由于主配置文件只配置了<mappers>标签下的<package>指定了dao接口所在包, 没有配置<typeAliases>下的<package>指定实体类的别名,因此mapper文件中返回的实体类名称不能使用简写,需要写完整全限定类名

主配置文件指定实体类别名后测试,测试类正常返回一对一查询的数据

以上是关于mybatis配置文件的主要内容,如果未能解决你的问题,请参考以下文章

mybatis报Mapper配置文件出错

如何让idea自动创建mybatis配置文件

ssm整合可以把mybatis和spring分开写配置文件吗

转MyBatis学习总结——优化MyBatis配置文件中的配置

mybatis配置文件中的标签怎么不能用

MyBatis学习MyBatis配置文件