mpper接口属性注入时报错,一般在mapper接口上加上@Repository注解
mapper过多,需要手动添加太麻烦,网上找了个,改吧改吧,能用了,放这儿吧。
public class AddAnno {
public static void main(String[] args) {
addAnno();
}
private static int i=0;
public static void addAnno(){
File file = new File("D:\\projects\\lofts-git\\web\\web-admin\\src\\main\\java\\lofts\\web\\admin\\mapper");
list(file);
System.out.println("总修改:"+i+"处。");
}
private static void list(File file){
//获取文件夹下的所有文件
File[] listFiles = file.listFiles();
//遍历文件
assert listFiles != null;
for (File file2 : listFiles) {
//判断是否为文件,如果是文件,就执行逻辑,如果不是文件,就递归
if (file2.isFile()) {
try {
//创建字符串,存储填充内容
StringBuffer content = new StringBuffer();
//创建缓冲流
BufferedReader br = new BufferedReader(new FileReader(file2));
//创建字符串,存储扫描内容
String scan="";
boolean change=false;
//循环读取文件
while ((scan=br.readLine())!=null) {
//判断是否含有public interface,如果含有就添加注解
if (scan.contains("public interface")) {
content.append("\r\n");
content.append("@Repository");
content.append("\r\n");
content.append(scan);
change=true;
i++;
}else {
content.append(scan);
}
}
br.close();
if (change) {
BufferedWriter bw = new BufferedWriter(new FileWriter(file2));
bw.write(content.toString());
bw.close();
}
} catch (Exception e) {
e.printStackTrace();
}
}else {
list(file2);
}
}
}
}
参考文章:java批量添加添加注解到所有业务接口