code-gen.md
... ...
@@ -3,5 +3,57 @@
3 3
代码生成器引入了更加灵活和高效的 builder 模式,使得开发者能够快速生成符合需求的代码,同时保持代码的优雅和整洁。这个新特性旨在进一步提升开发效率,减少重复劳动,让开发者能够更加专注于业务逻辑的实现。
4 4
5 5
6
+```
7
+F
8
+astAutoGenerator.create(ConfigUtils.load("dbcp.properties"))
9
+.dataSourceConfig(builder -> {
10
+builder.databaseQueryClass(DefaultQuery.class);
11
+})
12
+.globalConfig(builder -> {
13
+builder.outputDir("C:\\Users\\29662\\Documents\\dynamic-group\\src\\main\\java\\com\\sie\\snest\\dynamic\\group\\model\\");
14
+builder.author("mijiuye");
15
+builder.jsonFilePath("C:\\Users\\29662\\IdeaProjects\\sie-snest\\sie-snest-code-generator\\src\\main\\java\\com\\sie\\snest\\engine\\generator\\app.json");
16
+})
17
+.packageConfig(builder -> {
18
+builder.parent("com.sie.snest.dynamic.group");
19
+builder.version("1.0.0");
20
+})
21
+.templateConfig(builder -> builder.classzz(true))
22
+.compilerConfig(builder -> {
6 23
24
+String sourceDir = "C:\\Users\\29662\\Documents\\dynamic-group\\";
25
+String libDir = "C:\\Users\\29662\\Documents\\dynamic-group\\target\\lib\\";
26
+String outputLocation = "C:\\Users\\29662\\Documents\\dynamic-group\\src\\main\\java\\";
27
+
28
+
29
+List<String> filenames = null;
30
+try {
31
+filenames = FileUtils.getFileNames(new File(libDir), "**/*.jar", null, false, true);
32
+} catch (IOException e) {
33
+throw new RuntimeException(e);
34
+}
35
+Collections.sort(filenames);
36
+List<String> classpathEntries = new ArrayList<>();
37
+for (String filename : filenames) {
38
+classpathEntries.add(libDir + filename);
39
+}
40
+
41
+
42
+builder.setClasspathEntries(classpathEntries);
43
+builder.addSourceLocation(sourceDir);
44
+builder.setOutputLocation(outputLocation);
45
+try {
46
+FileUtils.deleteDirectory(outputLocation);
47
+} catch (IOException e) {
48
+throw new RuntimeException(e);
49
+}
50
+// compilerConfig.addInclude( filename );
51
+//compilerConfig.setSourceFiles(files);
52
+builder.setTargetVersion("1.8");
53
+builder.setSourceVersion("1.8");
54
+})
55
+.templateEngine(new FreemarkerTemplateEngine())
56
+.execute();
57
+
58
+```
7 59