mybatis-plus代码生成器
时间: 2023-09-04 11:15:35 浏览: 123
Mybatis-plus代码生成器是一个快速生成Mybatis-plus代码的工具,它可以根据数据库表自动生成实体类、Mapper接口、Service接口、Controller接口等代码,可以大大提高开发效率。
使用Mybatis-plus代码生成器需要先引入相关依赖:
```
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-generator</artifactId>
<version>3.3.2</version>
</dependency>
```
接下来,需要编写一个代码生成器的配置类,示例代码如下:
```
package com.example.demo.generator;
import com.baomidou.mybatisplus.annotation.DbType;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
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;
import com.baomidou.mybatisplus.generator.config.rules.TableFill;
import com.baomidou.mybatisplus.generator.config.rules.TableInfo;
import com.baomidou.mybatisplus.generator.config.rules.TableInfoHelper;
import java.util.ArrayList;
import java.util.List;
public class CodeGenerator {
public static void main(String[] args) {
// 数据源配置
DataSourceConfig dsc = new DataSourceConfig.Builder("jdbc:mysql://localhost:3306/demo", "root", "123456")
.driverName("com.mysql.jdbc.Driver")
.dbType(DbType.MYSQL)
.build();
// 全局配置
GlobalConfig gc = new GlobalConfig.Builder()
.outputDir("D:\\code\\demo\\src\\main\\java")
.author("example")
.openDir(false)
.fileOverride(true)
.serviceName("%sService")
.build();
// 包配置
PackageConfig pc = new PackageConfig.Builder()
.parent("com.example.demo")
.moduleName("")
.build();
// 策略配置
StrategyConfig sc = new StrategyConfig.Builder()
.addTablePrefix("t_")
.addIncludeTables("user")
.entityBuilder()
.naming(NamingStrategy.underline_to_camel)
.columnNaming(NamingStrategy.underline_to_camel)
.tableFillList(getTableFills())
.idType(IdType.AUTO)
.build();
// 代码生成器
AutoGenerator mpg = new AutoGenerator.Builder()
.globalConfig(gc)
.dataSource(dsc)
.packageConfig(pc)
.strategy(sc)
.build();
// 执行生成代码
mpg.execute();
}
// 自动填充配置
private static List<TableFill> getTableFills() {
List<TableFill> tableFills = new ArrayList<>();
tableFills.add(new TableFill("create_time", TableFill.INSERT));
tableFills.add(new TableFill("update_time", TableFill.UPDATE));
return tableFills;
}
}
```
在配置类中,需要配置数据源、全局配置、包配置和策略配置等信息。其中,策略配置是比较重要的部分,可以通过这个配置来指定需要生成代码的表、指定表前缀、指定实体类的命名规则等。
配置好之后,执行main方法即可生成代码。生成的代码默认放在指定的包路径下,包括实体类、Mapper接口、Service接口、Controller接口等。其中,实体类会自动添加@TableId和@TableName注解,Mapper接口会继承BaseMapper接口,Service接口和Controller接口需要手动实现。
总之,Mybatis-plus代码生成器是一个非常实用的工具,可以大大提高开发效率。
阅读全文
相关推荐









