1. pom.xml
<dependencies>
<!--mybatis-plus-->
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-boot-starter</artifactId>
<version>3.0.5</version>
</dependency>
<!-- 模板引擎 -->
<dependency>
<groupId>org.apache.velocity</groupId>
<artifactId>velocity-engine-core</artifactId>
<version>2.0</version>
</dependency>
<!--mysql驱动-->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
</dependency>
<dependency>
<groupId>org.junit.jupiter</groupId>
<artifactId>junit-jupiter-api</artifactId>
<version>5.5.2</version>
</dependency>
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
</dependency>
<!--添加swagger2依赖的jar包-->
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-swagger2</artifactId>
<version>2.6.1</version>
</dependency>
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-swagger-ui</artifactId>
<version>2.6.1</version>
</dependency>
<!--后端JSR303校验依赖包-->
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-validator</artifactId>
<version>6.0.9.Final</version>
</dependency>
<!--阿里云OSS-->
<dependency>
<groupId>com.aliyun.oss</groupId>
<artifactId>aliyun-sdk-oss</artifactId>
<version>3.8.0</version>
</dependency>
<!-- 日期时间工具-->
<dependency>
<groupId>joda-time</groupId>
<artifactId>joda-time</artifactId>
<version>2.10.1</version>
</dependency>
<!--读取07版本excel文档数据依赖的包-->
<dependency>
<groupId>org.apache.poi</groupId>
<artifactId>poi-ooxml</artifactId>
<version>3.9</version>
</dependency>
<!--读取03版本excel文档数据依赖的包-->
<dependency>
<groupId>org.apache.poi</groupId>
<artifactId>poi</artifactId>
<version>3.9</version>
</dependency>
<!--添加eureka client 依赖包-->
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-netflix-eureka-client</artifactId>
</dependency>
<!--Actuator 开启健康检查依赖的包-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-actuator</artifactId>
</dependency>
<!--添加Feigin依赖-->
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-openfeign</artifactId>
</dependency>
</dependencies>
<!--添加SpringCloud的依赖-->
<dependencyManagement>
<dependencies>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-dependencies</artifactId>
<version>Finchley.SR2</version>
<type>pom</type>
<scope>import</scope>
</dependency>
</dependencies>
</dependencyManagement>
2. MpCodeGenerator 类
package com.tina;
import com.baomidou.mybatisplus.annotation.DbType;
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;
import com.baomidou.mybatisplus.generator.config.rules.DateType;
import com.baomidou.mybatisplus.generator.config.rules.NamingStrategy;
import org.junit.jupiter.api.Test;
public class MpCodeGenerator {
@Test
public void run(){
//1.创建代码生成器
AutoGenerator mpg = new AutoGenerator();
//2.全局配置
GlobalConfig gc = new GlobalConfig();
//输出目录-->更该第1个地方
gc.setOutputDir("/Users/lvxiaokai/Desktop/tina/idea-work/edu_online/edu_teacher/src/main/java/");
//作者
gc.setAuthor("tina");
//生成后是否打开资源管理器
gc.setOpen(false);
//重新生成时文件是否覆盖
gc.setFileOverride(false);
//去掉Service接口的首字母I
gc.setServiceName("%sService");
//主键策略 ID_WORKER_STR对应String ID_WORKER对应Long
gc.setIdType(IdType.ID_WORKER_STR);
//定义生成的实体类中日期类型
gc.setDateType(DateType.ONLY_DATE);
//开启Swagger2模式
gc.setSwagger2(true);
mpg.setGlobalConfig(gc);
//3.数据源配置 -->更该第2个地方
DataSourceConfig dsc = new DataSourceConfig();
dsc.setUrl("jdbc:mysql://152.136.27.48:3306/d_tina?useUnicode=true&characterEncoding=utf-8");
dsc.setDriverName("com.mysql.jdbc.Driver");
dsc.setUsername("root");
dsc.setPassword("123456");
dsc.setDbType(DbType.MYSQL);
mpg.setDataSource(dsc);
//4.包配置 -->更该第3个地方
PackageConfig pc = new PackageConfig();
//模块名
pc.setModuleName("tina");
//启动类的包路径 如com.online.edu.service 需拆分parent:com.online.edu module:service
pc.setParent("com");
pc.setController("controller");
pc.setEntity("entity");
pc.setService("service");
pc.setMapper("mapper");
mpg.setPackageInfo(pc);
//5.策略配置
StrategyConfig strategy = new StrategyConfig();
//对应的表名 -->更该第4个地方
strategy.setInclude("t_course");
strategy.setTablePrefix("t_");//去掉表明的前缀
//数据库字段映射到实体类的转换策略 如下为驼峰式
strategy.setNaming(NamingStrategy.underline_to_camel);
//开启lombok
strategy.setEntityLombokModel(true);
//restful开启
strategy.setRestControllerStyle(true);
//url中驼峰转连字符
strategy.setControllerMappingHyphenStyle(true);
mpg.setStrategy(strategy);
//执行
mpg.execute();
}
}
网友评论