項目場景:
使用 mybatis + springboot 進行開發(fā),執(zhí)行時報找不到 dao 文件
問題解決步驟:
- 先將 dao.java 文件對應(yīng)的目錄放到掃包的路徑下:
通常都是在 Application 文件中添加:
@SpringBootApplication(exclude = { DataSourceAutoConfiguration.class,FlywayAutoConfiguration.class })
@MapperScan({"com.test.project.*.*.mapper", "com.test.project.stf.mapper", "com.test.project.report.dao"})
public class Application implements CommandLineRunner{
}
如上铡溪,在 @MapperScan 注解中添加 dao 文件對應(yīng)的路徑,這個路徑是 java 下面類型為 interface 的 dao 文件的包路徑饺鹃。
package com.test.project.report.model;
public interface ReportDao {
/**
* 獲取各個項目對應(yīng)的總用例數(shù)
* @return
*/
List<ReportDto> selectProjectTotalCase(@Param("projectIds") List<Integer> projectIds);
}
- 將 dao.xml 文件添加到掃包路徑下:
通常都是在 application.yml 或 application.properties 文件中添加:
# MyBatis
mybatis:
# 搜索指定包別名
typeAliasesPackage: com.test.project
# 配置mapper的掃描糯彬,找到所有的mapper.xml映射文件
mapperLocations: classpath:mybatis/**/*Mapper.xml,classpath:mybatis/**/*Dao.xml
# 加載全局的配置文件
configLocation: classpath:mybatis/mybatis-config.xml
再次運行,可以正常找到 dao 文件蛾绎。