lisy
2023-06-14 6a4b079181d22a54a11dfdafd5400b171a1f3fc4
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
package com.dsh.other.util;
 
import com.baomidou.mybatisplus.enums.IdType;
import com.baomidou.mybatisplus.generator.AutoGenerator;
import com.baomidou.mybatisplus.generator.config.*;
import com.baomidou.mybatisplus.generator.config.rules.DbType;
import com.baomidou.mybatisplus.generator.config.rules.NamingStrategy;
 
public class CodeGeneration {
 
    public static void gen(String tableName){
 
        //C:\Users\linla\Desktop\project02\guns-admin
        //项目目录
        //
        String projectPath = "/Users/java/IdeaProjects/PlayPai_demo/cloud-server-other/src/main/java/"; //System.getProperty("user.dir");
        //String projectPath =System.getProperty("user.dir");
        AutoGenerator mpg = new AutoGenerator();
        //全局配置
        GlobalConfig gc = new GlobalConfig();
        gc.setOutputDir(projectPath );
        gc.setFileOverride(true);
        gc.setActiveRecord(true);//不需要ActiveRecord特性的请改为false
        gc.setEnableCache(false);//XML二级缓存
        gc.setBaseResultMap(true);//XML ResultMap
        gc.setBaseColumnList(false);//XML columList
        gc.setIdType(IdType.UUID);
        gc.setAuthor("administrator");//作者
        gc.setOpen(false);//生成完成不打开文件夹
 
        //自定义文件命名,注意%s 会自动填充表实体属性
        gc.setServiceName("%sService");
        gc.setServiceImplName("%sServiceImpl");
        gc.setMapperName("%sMapper");
        gc.setXmlName("%sMapper");
        gc.setControllerName("%sController");
        mpg.setGlobalConfig(gc);
 
        //数据源配置
        DataSourceConfig dsc = new DataSourceConfig();
        dsc.setDbType(DbType.MYSQL);
//        dsc.setUrl("jdbc:mysql://192.168.110.80:3306/playpai_account?serverTimezone=GMT%2B8&useUnicode=true&characterEncoding=utf-8");
        dsc.setUrl("jdbc:mysql://127.0.0.1:3306/playpai_other?serverTimezone=GMT%2B8&useUnicode=true&characterEncoding=utf-8");
        dsc.setDriverName("com.mysql.cj.jdbc.Driver");
        dsc.setUsername("root");
        dsc.setPassword("earl9096");
        mpg.setDataSource(dsc);
 
        //数据库表配置
        StrategyConfig strategy = new StrategyConfig();
        strategy.setTablePrefix(new String[]{});//此处可以修改您的表前缀
        strategy.setNaming(NamingStrategy.underline_to_camel);//表名生成策略
        strategy.setInclude(new String[]{tableName});//需要生成的表
        strategy.setRestControllerStyle(true);
        strategy.setEntityLombokModel(true);
        strategy.setSuperServiceClass(null);
        strategy.setSuperServiceImplClass(null);
        strategy.setSuperMapperClass(null);
        mpg.setStrategy(strategy);
 
        //模板配置
        TemplateConfig template=new TemplateConfig();
        //不生成controller
        template.setController(null);
        //不生成xml文件
        //template.setXml(null);
        mpg.setTemplate(template);
        //包配置
        PackageConfig pc = new PackageConfig();
        pc.setParent("com.dsh.app");
        pc.setEntity("entity");
        pc.setService("service");
        pc.setServiceImpl("service.impl");
        pc.setMapper("mapper");
 
        pc.setXml("mapper.xml");
 
//        pc.setController("controller.member");
        mpg.setPackageInfo(pc);
 
        //执行生成
        mpg.execute();
    }
 
    public static void main(String[] args) {
        gen("t_img_config");
    }
}