1. 首页 >  小程序定制 >  Mybatis-Plus代码生成器的使用

Mybatis-Plus代码生成器的使用

通常我们在做项目的时候,要手动搭建项目的结构,如controller,service,mapper,entity,是不是很麻烦,特别是数据库表特别多时,现在介绍一下使用MybatisPlus时怎么自动生成这些代码。

  1. 首先要在项目的pom.xml里引入必要的依赖,如下:

    com.baomidou mybatis-plus-boot-starter 3.5.3.1 com.mysql mysql-connector-j runtime com.alibaba druid 1.2.1 org.projectlombok lombok true com.baomidou mybatis-plus-generator 3.4.1 org.apache.velocity velocity-engine-core 2.3

  2. 新建一个代码生成器类如下:

    package com.example;

    import com.baomidou.mybatisplus.annotation.IdType; 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;

    public class CodeGenerator { public static void main(String[] args) { //1.获取代码生成器的对象 AutoGenerator autoGenerator = new AutoGenerator();

        //设置数据库相关配置
        DataSourceConfig dataSource = new DataSourceConfig();
        dataSource.setDriverName("com.mysql.cj.jdbc.Driver");
        dataSource.setUrl("jdbc:mysql://localhost:3306/db?serverTimezone=UTC");
        dataSource.setUsername("root");
        dataSource.setPassword("******");
        autoGenerator.setDataSource(dataSource);
    
    
        //设置全局配置
        GlobalConfig globalConfig = new GlobalConfig();
        globalConfig.setOutputDir("D:\\codes\\java\\demo\\spring\\projectname\\src\\main\\java");    //设置代码生成位置
        globalConfig.setOpen(false);    //设置生成完毕后是否打开生成代码所在的目录
        globalConfig.setAuthor("minqilaing");    //设置作者
        globalConfig.setFileOverride(true);     //设置是否覆盖原始生成的文件
        globalConfig.setMapperName("%sMapper");    //设置数据层接口名,%s为占位符,指代模块名称
        globalConfig.setIdType(IdType.ASSIGN_ID);   //设置Id生成策略
        autoGenerator.setGlobalConfig(globalConfig);
    
    
        //设置包名相关配置
        PackageConfig packageInfo = new PackageConfig();
        packageInfo.setParent("com.aaa");   //设置生成的包名,与代码所在位置不冲突,二者叠加组成完整路径
        packageInfo.setEntity("entity");    //设置实体类包名
        packageInfo.setMapper("mapper");   //设置数据层包名
        autoGenerator.setPackageInfo(packageInfo);
    
    
        //策略设置
        StrategyConfig strategyConfig = new StrategyConfig();
        strategyConfig.setInclude("book");  //设置当前参与生成的表名,参数为可变参数
    

    // strategyConfig.setTablePrefix(“tbl_”); //设置数据库表的前缀名称,模块名 = 数据库表名 - 前缀名 例如: User = tbluser - tbl strategyConfig.setRestControllerStyle(true); //设置是否启用Rest风格 strategyConfig.setVersionFieldName(“version”); //设置乐观锁字段名 strategyConfig.setLogicDeleteFieldName(“deleted”); //设置逻辑删除字段名 strategyConfig.setEntityLombokModel(true); //设置是否启用lombok autoGenerator.setStrategy(strategyConfig); //2.执行生成操作 autoGenerator.execute(); } }

  3. 执行如上代码就会生成了,示例如下:

/xiao-cheng-xu-ding-zhi/mybatis-plusdai-ma-sheng-cheng-qi-de-shi-yong-366.html