下面是Mybatis Plus插件三种方式的逆向工程的使用攻略:
一、准备工作
首先,我们需要在使用Mybatis Plus之前构建一个SpringBoot项目,并且引入Mybatis Plus相关的依赖。
<!-- 引入Mybatis Plus核心依赖 -->
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-boot-starter</artifactId>
<version>3.0.6</version>
</dependency>
<!-- 引入Mybatis Plus逆向工程插件 -->
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-generator</artifactId>
<version>3.4.2</version>
</dependency>
同时,我们需要在application.properties
中配置数据库相关的信息。
二、使用Mybatis Plus的CodeGenerator类
Mybatis Plus提供了一个名为CodeGenerator的类,通过使用该类,我们可以快速生成基于数据库表的Java实体类、Mapper接口、Service层、Controller层等代码。
1. 配置CodeGenerator类
在主类中新增一个配置类,用于配置CodeGenerator,并添加相关的参数。
@Configuration
public class MybatisPlusConfig {
@Autowired
private DataSource dataSource;
@Bean
public CodeGenerator generateCode() {
CodeGenerator generator = new CodeGenerator();
// 数据源配置
DataSourceConfig dataSourceConfig = new DataSourceConfig();
dataSourceConfig.setDbType(DbType.MYSQL)
.setUrl("jdbc:mysql://localhost:3306/mybatis_plus_demo?useUnicode=true&characterEncoding=utf-8&useSSL=false&serverTimezone=Asia/Shanghai")
.setUsername("root")
.setPassword("root");
generator.setDataSource(dataSourceConfig);
// 全局配置
GlobalConfig globalConfig = new GlobalConfig();
String projectPath = System.getProperty("user.dir");
globalConfig.setOutputDir(projectPath + "/src/main/java")
.setAuthor("自己的名字")
.setFileOverride(false);
generator.setGlobalConfig(globalConfig);
// 策略配置
StrategyConfig strategyConfig = new StrategyConfig();
strategyConfig.setInclude("t_user"); // 只生成t_user表
generator.setStrategy(strategyConfig);
// 包配置
PackageConfig packageConfig = new PackageConfig();
packageConfig.setParent("com.example.mybatisplusdemo")
.setEntity("entity")
.setMapper("mapper")
.setService("service")
.setServiceImpl("service.impl")
.setController("controller");
generator.setPackageInfo(packageConfig);
return generator;
}
}
以上代码中,我们通过DataSourceConfig
类配置了数据库连接信息,GlobalConfig
类定义了代码生成后的文件路径、作者信息和是否覆盖重复的文件,StrategyConfig
类定义了需要生成的表和需要排除的表,PackageConfig
类定义了生成的代码包的路径和命名方式。
2. 使用CodeGenerator类
完成配置后,我们在main方法中,使用以下代码即可生成代码:
public static void main(String[] args) {
SpringApplication.run(MybatisPlusDemoApplication.class, args);
// 执行代码生成器
ApplicationContext context = new AnnotationConfigApplicationContext(MybatisPlusConfig.class);
CodeGenerator generator = context.getBean(CodeGenerator.class);
generator.execute();
}
以上代码执行后,我们可以在指定的包中获取到生成的代码,可以看到在com.example.mybatisplusdemo
路径下生成了entity、mapper、service、controller四个包,并且分别对应有自动生成的Java文件。
三、使用Mybatis Plus的代码生成器MysqlGenerator类
Mybatis Plus还提供了一个官方给出的逆向工程代码生成器MysqlGenerator类。使用该类可以生成基于数据库的完整的Java代码块,也是Mybatis Plus强烈推荐的逆向工程方法。
1. 配置MysqlGenerator类
和上一章节类似,我们同样需要在主类中新增一个配置类,用于配置MysqlGenerator。
@Configuration
public class MybatisPlusConfig {
@Autowired
private DataSource dataSource;
@Bean
public MysqlGenerator mysqlGenerator() {
MysqlGenerator mysqlGenerator = new MysqlGenerator(dataSource, new SimpleCustomizer());
mysqlGenerator.setTableNames(Arrays.asList("t_user"));
return mysqlGenerator;
}
}
以上代码中,我们通过SimpleCustomizer
类实现了自定义的代码生成器,Arrays.asList("t_user")
则表示只生成t_user表的代码。
2. 使用MysqlGenerator类
在main方法中,使用以下代码即可生成代码:
public static void main(String[] args) {
SpringApplication.run(MybatisPlusDemoApplication.class, args);
// 执行代码生成器
ApplicationContext context = new AnnotationConfigApplicationContext(MybatisPlusConfig.class);
MysqlGenerator generator = context.getBean(MysqlGenerator.class);
generator.run();
}
以上代码执行后,我们可以在指定的包中获取到生成的代码。
四、使用Mybatis Plus的MybatisCodeGenerator插件
使用Mybatis Plus的插件MybatisCodeGenerator是另一种逆向工程方法,它是通过在IDEA中安装MybatisCodeGenerator插件,然后在IDEA中的编辑器内执行命令来生成代码。该插件提供了语法高亮、代码补全、自定义标签的支持,并且可以自定义生成的XML文件配置。
1. 安装MybatisCodeGenerator插件
在IDEA内搜索插件Marketplace,然后搜索MybatisCodeGenerator插件,安装即可。
2. 使用MybatisCodeGenerator插件
找到需要逆向工程的Mapper映射XML文件,右键点击该文件,选择MybatisCodeGenerator
-> Generate By Table Config
来生成代码即可。
以上就是Mybatis Plus插件三种方式的逆向工程的使用攻略。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Mybatis Plus插件三种方式的逆向工程的使用 - Python技术站