zoukankan      html  css  js  c++  java
  • mybatis-plus代码生成模板

    @Test
        public void test1(){
            GlobalConfig globalConfig = new GlobalConfig();
    
            globalConfig.setOutputDir(System.getProperty("user.dir") + "/src/main/java");
            globalConfig.setAuthor("ZhengQinfeng");
            globalConfig.setOpen(false);
            globalConfig.setActiveRecord(true);
            globalConfig.setFileOverride(true);
    //        globalConfig.setServiceName("%sService");
            globalConfig.setIdType(IdType.AUTO).setBaseResultMap(true).setBaseColumnList(true);
    
    
    
            //2. 数据源配置
            DataSourceConfig dsConfig = new DataSourceConfig();
            dsConfig.setDbType(DbType.MYSQL)  // 设置数据库类型
                    .setDriverName("com.mysql.jdbc.Driver")
                    .setUrl("jdbc:mysql://192.168.79.199:3306/data")
                    .setUsername("root")
                    .setPassword("1328174");
    
            //3. 策略配置
            StrategyConfig stConfig = new StrategyConfig();
            stConfig.setCapitalMode(true) //全局大写命名
                    .setEntityLombokModel(true)
                    .setTablePrefix("tb_")
                    .setNaming(NamingStrategy.underline_to_camel) // 数据库表映射到实体的命名策略
                    .setInclude("tb_goods");  // 生成的表
    
            //4. 包名策略配置
            PackageConfig pkConfig = new PackageConfig();
            pkConfig.setParent("qinfeng.zheng.mobb.goods")
                    .setMapper("mapper")
                    .setService("service")
                    .setController("controller")
                    .setEntity("beans")
                    .setXml("mapper");
    
            //5. 整合配置
            AutoGenerator ag = new AutoGenerator();
    
            ag.setGlobalConfig(globalConfig)
                    .setDataSource(dsConfig)
                    .setStrategy(stConfig)
                    .setPackageInfo(pkConfig);
    
            //6. 执行
            ag.execute();
        }

     ==========================下面来个更完一点的================================================

    1. 添加依赖

            <dependency>
                <groupId>com.baomidou</groupId>
                <artifactId>mybatis-plus-boot-starter</artifactId>
                <version>3.3.2</version>
            </dependency>
            <dependency>
                <groupId>com.baomidou</groupId>
                <artifactId>mybatis-plus-generator</artifactId>
                <version>3.3.2</version>
            </dependency>
    
            <dependency>
                <groupId>org.apache.velocity</groupId>
                <artifactId>velocity-engine-core</artifactId>
                <version>2.2</version>
            </dependency>

    2.  代码 

    import com.baomidou.mybatisplus.annotation.DbType;
    import com.baomidou.mybatisplus.annotation.FieldFill;
    import com.baomidou.mybatisplus.generator.AutoGenerator;
    import com.baomidou.mybatisplus.generator.config.DataSourceConfig;
    import com.baomidou.mybatisplus.generator.config.GlobalConfig;
    import com.baomidou.mybatisplus.generator.config.PackageConfig;
    import com.baomidou.mybatisplus.generator.config.StrategyConfig;
    import com.baomidou.mybatisplus.generator.config.po.TableFill;
    import com.baomidou.mybatisplus.generator.config.rules.DateType;
    import com.baomidou.mybatisplus.generator.config.rules.NamingStrategy;
    
    import java.util.ArrayList;
    
    /**
     * @Author ZhengQinfeng
     * @Date 2020/7/18 15:58
     * @dec
     */
    public class AutoGeneratorCode {
        public static void main(String[] args) {
            // 代码生成器
            AutoGenerator mpg = new AutoGenerator();
    
            // 1.全局配置
            GlobalConfig gc = new GlobalConfig();
            String projectPath = System.getProperty("user.dir");
            gc.setOutputDir(projectPath + "/app-kaile/src/main/java");
            gc.setAuthor("郑钦锋");
            gc.setOpen(false);
            gc.setFileOverride(false);
            gc.setDateType(DateType.ONLY_DATE);
            mpg.setGlobalConfig(gc);
    
            // 2.数据源配置
            DataSourceConfig dsc = new DataSourceConfig();
            dsc.setUrl("jdbc:mysql://192.168.79.199:3306/appBB?useUnicode=true&useSSL=false&characterEncoding=utf8");
            dsc.setDriverName("com.mysql.jdbc.Driver");
            dsc.setUsername("root");
            dsc.setPassword("1328174");
            dsc.setDbType(DbType.MYSQL);
            mpg.setDataSource(dsc);
    
            // 包配置
            PackageConfig pc = new PackageConfig();
            pc.setParent("qinfeng.zheng.goods");
            pc.setController("controller");
            pc.setEntity("entity");
            pc.setMapper("mapper");
            pc.setService("service");
            pc.setServiceImpl("service.impl");
            mpg.setPackageInfo(pc);
    
    
            // 策略配置
            StrategyConfig strategy = new StrategyConfig();
            strategy.setInclude("tb_goods_type","tb_goods","tb_comments","tb_image","tb_coupon");  // 设置要映射的表名
            strategy.setTablePrefix("tb_");
            strategy.setNaming(NamingStrategy.underline_to_camel);
            strategy.setColumnNaming(NamingStrategy.underline_to_camel);
            strategy.setEntityLombokModel(true);
            strategy.setRestControllerStyle(true);
            strategy.setLogicDeleteFieldName("deleted"); // 逻辑删除字段
            // 自动填充配置
    //        TableFill createTime = new TableFill("create_time", FieldFill.INSERT);
    //
    //        TableFill updateTime = new TableFill("update_time", FieldFill.INSERT_UPDATE);
    //
    //        ArrayList<TableFill> tableFillList = new ArrayList<>();
    //
    //        tableFillList.add(createTime);
    //        tableFillList.add(updateTime);
    //
    //        strategy.setTableFillList(tableFillList);
            strategy.setControllerMappingHyphenStyle(true);  // http://localhost:8080/hello_id_2
    
    
            mpg.setStrategy(strategy);
            mpg.execute();
    
        }
    }
  • 相关阅读:
    系统文件夹路径的系统宏定义
    大数问题:用字符串解决大数相加和相乘
    C++中四种类型转换方式(ynamic_cast,const_cast,static_cast,reinterpret_cast)
    浅谈bitmap算法
    linux分享一:网络设置
    php分享十六:php读取大文件总结
    面试题一:linux面试题
    php分享十五:php的命令行操作
    查询系统负载信息 Linux 命令详解
    Linux守护进程
  • 原文地址:https://www.cnblogs.com/z-qinfeng/p/12341532.html
Copyright © 2011-2022 走看看