mybatis-plus代码生成功能

  1. 创建一个生成代码的配置类
package com.offcn.generator;

import com.baomidou.mybatisplus.annotation.DbType;
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.rules.NamingStrategy;

//用于生成代码
public class PlusGenerator {
    public static void main(String[] args) {
        //代码生成对象
        AutoGenerator mpg = new AutoGenerator();

        //全局配置:作者 项目路径 名称定义格式
        GlobalConfig gc = new GlobalConfig();
        //读取当前项目路径,user.dir是关键字,调用结果就是项目路径
        String projectPath = System.getProperty("user.dir");
        gc.setOutputDir(projectPath+"/src/main/java");
        gc.setAuthor("cjw");  //设置作者
        gc.setOpen(false);   //生成之后是否打开资源管理器
        gc.setFileOverride(false);     //重新生成文件时是否覆盖
        gc.setServiceName("%sService");    //命名格式的设置
        //gc.setSwagger2(true);  //实体属性Swagger2注解
        //需要把设置的信息放入代码生成对象
        mpg.setGlobalConfig(gc);

        //数据源配置
        DataSourceConfig dsc = new DataSourceConfig();
        dsc.setUrl("jdbc:mysql:///offcnpe?useUnicode=true&useSSL=false&characterEncoding=utf8");
        dsc.setDriverName("com.mysql.jdbc.Driver");
        dsc.setUsername("root");
        dsc.setPassword("root");
        dsc.setDbType(DbType.MYSQL);   //设置那种数据库
        mpg.setDataSource(dsc);

        //包名配置:控制层、业务层、持久层、映射文件名
        PackageConfig pc = new PackageConfig();
        pc.setModuleName(null);   //设置模块的名字
        pc.setParent("com.offcn");     //几层的基础包
        pc.setController("controller");
        pc.setService("service");
        pc.setServiceImpl("service.impl");
        pc.setMapper("mapper");
        mpg.setPackageInfo(pc);

        //配置策略:参与代码生成的表、类名、接口名命名方法
        StrategyConfig sc = new StrategyConfig();
        sc.setInclude("t_checkgroup","t_checkgroup_checkitem","t_checkitem",
                "t_member","t_menu","t_order","t_ordersetting","t_role","t_permission",
                "t_role_menu","t_role_permission","t_setmeal","t_setmeal_checkgroup",
                "t_user","t_user_role");   //对哪一张表生成代码
        sc.setNaming(NamingStrategy.underline_to_camel);  //数据库表映射到实体类的命名策略
        sc.setTablePrefix(pc.getModuleName() + "_");  //生成实体类时去掉前缀
        sc.setColumnNaming(NamingStrategy.underline_to_camel);   //数据库表字段映射道试题类的命名策略
        sc.setEntityLombokModel(true);   //lombok模型  @Accessors(chain = true) setter链式操作
        sc.setRestControllerStyle(true);  //restful api风格控制器
        sc.setControllerMappingHyphenStyle(true);  //url中驼峰转连接字符
        mpg.setStrategy(sc);

        //执行生成代码的方法
        mpg.execute();
    }
}


  1. maven项目 依赖有
<dependencies>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter</artifactId>
        </dependency>

        <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
            <version>5.1.49</version>
        </dependency>
        <dependency>
            <groupId>org.projectlombok</groupId>
            <artifactId>lombok</artifactId>
            <optional>true</optional>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-test</artifactId>
            <scope>test</scope>
        </dependency>

        <dependency>
            <groupId>com.baomidou</groupId>
            <artifactId>mybatis-plus-boot-starter</artifactId>
            <version>3.4.2</version>
        </dependency>

        <!--代码生成器-->
        <dependency>
            <groupId>com.baomidou</groupId>
            <artifactId>mybatis-plus-generator</artifactId>
            <version>3.4.1</version>
        </dependency>

        <!--模板引擎-->
        <dependency>
            <groupId>org.apache.velocity</groupId>
            <artifactId>velocity-engine-core</artifactId>
            <version>2.3</version>
        </dependency>
    </dependencies>
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值