用IDEA新建了一個測試MyBatis工程,工程目錄如下
其中config是MyBatis的配置文件,內容如下
<?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> <environments default="development"> <environment id="development"> <transactionManager type="JDBC"></transactionManager> <dataSource type="POOLED"> <property name="driver" value="com.mysql.jdbc.Driver"/> <property name="url" value="jdbc:mysql://localhost:3306/mybatis"/> <property name="username" value="root"/> <property name="password" value="19871111"/> </dataSource> </environment> </environments> <mappers> <mapper resource="com/shao/mapping/userMapper.xml"/> </mappers> </configuration>
編譯時提示錯誤 Error parsing SQL Mapper Configuration. Cause: java.io.IOException: Could not find resource com/shao/mapping/userMapper.xml
即找不到userMapper.xml這個Mapper文件,仔細查看了目錄設置,並沒有錯誤,在網上找了半天,終於發現原因:
idea不會編譯src的java目錄的xml文件
所以解決思路就是:將IDEA maven項目中src源代碼下的xml等資源文件編譯進classes文件夾
具體操作方法就是:配置maven的pom文件配置,在<build>節點下添加<resources>代碼:
<build> <resources> <resource> <directory>src/main/java</directory> <includes> <include>**/*.xml</include> </includes> </resource> </resources> </build>