在idea中spring boot整合mybatis,mapper.xml文件无法被加载
在idea中做spring boot整合mybatis测试时,发现启动报错:
org.apache.ibatis.binding.BindingException: Invalid bound stateme
找不到mapper.xml文件,查看编译后的文件发现,mapper.xml不在编译路径下,如图所示
解决方式一:
在pom.xml文件中指定加载mapper包下的mapper.xml文件,配置如下:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-resources-plugin</artifactId>
<version>2.7</version>
<configuration>
<encoding>UTF-8</encoding>
</configuration>
</plugin>
</plugins>
<resources>
<resource>
<directory>src/main/java</directory>
<includes>
<include>**/*.properties</include>
<include>**/*.xml</include>
</includes>
<filtering>false</filtering>
</resource>
</resources>
解决方式二:
在application.yml文件中添加mybatis配置,如下:
mybatis:
type-aliases-package: com.liu.entity
mapper-locations: classpath:/com.liu.mapper.*.xml
指定mapper.xml文件的加载位置
经测试,代码均正常运行