Mybatis-Plus代码生成器


1.配置maven依赖pom.xml

<dependencies>  <!-- 数据库驱动 -->  <dependency>  <groupId>mysql</groupId>  <artifactId>mysql-connector-java</artifactId>  </dependency>   <!-- lombok -->  <dependency>  <groupId>org.projectlombok</groupId>  <artifactId>lombok</artifactId>  </dependency>   <!-- mybatis-plus -->  <dependency>  <groupId>com.baomidou</groupId>  <artifactId>mybatis-plus-boot-starter</artifactId>  <version>3.0.5</version>  </dependency>   <!--MyBatis-Plus从3.0.3之后移除了代码生成器与模板引擎的默认依赖,需要手动添加相关依赖-->  <!-- 代码生成器 依赖 -->  <dependency>  <groupId>com.baomidou</groupId>  <artifactId>mybatis-plus-generator</artifactId>  <version>3.3.1</version>  </dependency>  <!-- 模板引擎 -->  <dependency>  <groupId>org.apache.velocity</groupId>  <artifactId>velocity-engine-core</artifactId>  <version>2.0</version>  </dependency> </dependencies>

2.配置数据库连接

server:
  port: 8081
spring:
  datasource:
    driver-class-name: com.mysql.cj.jdbc.Driver
    url: jdbc:mysql://localhost:3306/test?useSSL=false&useUnicode=true&characterEncoding=utf-8&serverTimezone=Asia/Shanghai
    username: root
    password: root
    type: com.alibaba.druid.pool.DruidDataSource
mybatis-plus:
  mapper-locations: classpath:mapper/*.xml
  global-config:
    db-config:
      id-type: auto
      field-strategy: NOT_EMPTY
      db-type: MYSQL
  configuration:
    map-underscore-to-camel-case: true
    call-setters-on-nulls: true
    log-impl: org.apache.ibatis.logging.stdout.StdOutImpl

3.配置mybatis-plus的代码生成器

 
 
public class GeneratorCode {  public static void main(String[] args) {  // 构建一个代码自动生成器对象  AutoGenerator mpg = new AutoGenerator();   // 配置策略  // 1、全局配置  GlobalConfig gc = new GlobalConfig();  String projectPath = System.getProperty("user.dir");  gc.setOutputDir(projectPath+"/src/main/java");  gc.setAuthor("作者");  gc.setOpen(false);  gc.setFileOverride(false); // 是否覆盖  gc.setServiceName("%sService"); // 去Service的I前缀  gc.setIdType(IdType.AUTO); // 主键自增  gc.setDateType(DateType.ONLY_DATE); // 设置日期类型 // gc.setSwagger2(true); // 是否开启swagger  mpg.setGlobalConfig(gc);   //2、设置数据源  DataSourceConfig dsc = new DataSourceConfig();  dsc.setUrl("jdbc:mysql://localhost:3306/数据库名?useSSL=false&useUnicode=true&characterEncoding=utf-8&serverTimezone=Asia/Shanghai");  dsc.setDriverName("com.mysql.cj.jdbc.Driver");  dsc.setUsername("root");  dsc.setPassword("密码");  dsc.setDbType(DbType.MYSQL);  mpg.setDataSource(dsc);   //3、包的配置  PackageConfig pc = new PackageConfig(); // pc.setModuleName("test"); // 模块名  pc.setParent("com.包名字"); // 父路径  pc.setEntity("entity"); // 实体类包名  pc.setMapper("mapper"); // mapper包名  pc.setService("service"); // 业务层包名  pc.setController("controller"); // 控制层包名  mpg.setPackageInfo(pc);   //4、策略配置  StrategyConfig strategy = new StrategyConfig();  strategy.setInclude("表名1","表名2"); // 设置要映射的表名  strategy.setNaming(NamingStrategy.underline_to_camel);  strategy.setColumnNaming(NamingStrategy.underline_to_camel);  strategy.setEntityLombokModel(true); // 自动lombok;  strategy.setLogicDeleteFieldName("deleted"); // 逻辑删除  // 自动填充配置 // TableFill gmtCreate = new TableFill("gmt_create", FieldFill.INSERT); // TableFill gmtModified = new TableFill("gmt_modified",FieldFill.INSERT_UPDATE); // ArrayList<TableFill> tableFills = new ArrayList<>(); // tableFills.add(gmtCreate); // tableFills.add(gmtModified); // strategy.setTableFillList(tableFills); // // 乐观锁 // strategy.setVersionFieldName("version"); // strategy.setRestControllerStyle(true); // 驼峰命名 // strategy.setControllerMappingHyphenStyle(true); // 下划线转驼峰  mpg.setStrategy(strategy);   mpg.execute(); //执行  } }
 

运行main()方法,会惊奇的发现多了很多文件


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM