简单的代码生成器
public class Generator {
public void generator() throws Exception {
List<String> warnings = new ArrayList<String>();
boolean overwrite = true;
File configFile = new File("meng-admin/src/main/resources/generatorConfig.xml");
ConfigurationParser parser = new ConfigurationParser(warnings);
Configuration config = parser.parseConfiguration(configFile);
DefaultShellCallback callback = new DefaultShellCallback(overwrite);
MyBatisGenerator myBatisGenerator = new MyBatisGenerator(config, callback, warnings);
myBatisGenerator.generate(null);
}
public static void generMapper(String className) throws Exception {
BufferedReader br = new BufferedReader(new FileReader("meng-admin/src/main/java/me/yexinkai/dao/DemoDao.java"));
BufferedWriter wr =
new BufferedWriter(new FileWriter("meng-admin/src/main/java/me/yexinkai/dao/" + className + "Dao.java"));
String line = null;
while ((line = br.readLine()) != null) {
line = line.replace("DemoQueryCriteria", className);
wr.write(line);
wr.newLine();
}
wr.close();
br.close();
}
public static void generService(String className) throws Exception {
BufferedReader br =
new BufferedReader(new FileReader("meng-admin/src/main/java/me/yexinkai/service/DemoService.java"));
BufferedWriter wr = new BufferedWriter(
new FileWriter("meng-admin/src/main/java/me/yexinkai/service/" + className + "Service.java"));
String line = null;
while ((line = br.readLine()) != null) {
line = line.replace("DemoQueryCriteria", className);
wr.write(line);
wr.newLine();
}
wr.close();
br.close();
}
public static void generateServiceImpl(String className) throws Exception {
String lowerObjName = className.substring(0, 1).toLowerCase() + className.substring(1, className.length());
BufferedReader br = new BufferedReader(
new FileReader("meng-admin/src/main/java/me/yexinkai/service/impl/DemoServiceImpl.java"));
BufferedWriter bw = new BufferedWriter(
new FileWriter("meng-admin/src/main/java/me/yexinkai/service/impl/" + className + "ServiceImpl.java"));
String line = null;
while ((line = br.readLine()) != null) {
line = line.replace("Demo", className);
line = line.replace("demo", lowerObjName);
bw.write(line);
bw.newLine();
}
bw.close();
br.close();
}
public static void generSrc(String className) throws Exception {
generMapper(className);
generService(className);
generateServiceImpl(className);
}
public static void main(String[] args) throws Exception {
Generator generator = new Generator();
generator.generator();
generSrc("Agent");
}
}