mybatis-plus dao层代码生成工具
时间: 2023-07-25 14:50:53 浏览: 204
Mybatis-Plus提供了一个非常方便的代码生成器,可以自动生成DAO层的代码。使用代码生成器可以极大地提高开发效率,减少手写重复代码的时间和工作量。
以下是使用Mybatis-Plus代码生成器生成DAO层代码的步骤:
1. 添加依赖:在pom.xml文件中添加Mybatis-Plus的依赖。
2. 配置代码生成器:在项目的配置文件中添加代码生成器的配置信息,例如:数据库连接信息、输出路径、包名等。
3. 运行代码生成器:运行代码生成器,自动生成DAO层代码。
4. 使用DAO层代码:在业务代码中使用自动生成的DAO层代码,进行数据库操作。
总的来说,使用Mybatis-Plus的代码生成器可以大大提高开发效率,减少手写重复代码的时间和工作量,同时也可以保证代码的规范性和一致性。
相关问题
基于mybatis-plus的代码生成器
MyBatis-Plus是一个基于MyBatis的轻量级、简化版的持久层框架,它为开发者提供了更简洁、易用的方式来操作数据库。其中的代码生成器功能(CodeGenerator)可以帮助快速自动生成DAO(Data Access Object)、Service、Mapper和实体类等基础模板文件,极大地提高了开发效率。
MyBatis-Plus的代码生成器通常包括以下几个步骤:
1. **配置**:你需要在项目的配置中指定生成器的规则,如表名、字段名、包路径等,并设置生成的模板路径。
2. **运行**:启动代码生成器工具,通常是通过Maven或Gradle插件调用,也可以作为独立的应用执行。
3. **生成**:根据预设的配置,代码生成器会根据数据库中的表结构动态创建对应的Java代码。
4. **定制**:虽然生成的基础代码已经很实用,但往往还需要开发者手动修改或添加特定业务逻辑。
mybatis-plus的代码生成器使用方法
MyBatis-Plus 的代码生成器是一个非常方便的工具,可以帮助我们快速生成 MyBatis 相关的 DAO、Mapper、Entity、Service、Controller 等代码。具体使用方法如下:
1. 引入 MyBatis-Plus 的代码生成器依赖
在 Maven 中添加以下依赖:
```xml
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-generator</artifactId>
<version>${mybatis-plus.version}</version>
</dependency>
```
2. 配置代码生成器
在项目的配置文件中,添加 MyBatis-Plus 的代码生成器配置项:
```yaml
mybatis-plus:
# 配置代码生成器
generator:
# 配置数据库相关信息
database:
driver-class-name: com.mysql.jdbc.Driver
url: jdbc:mysql://localhost:3306/mybatis_plus?serverTimezone=UTC
username: root
password: 管理员密码
# 配置全局策略
global-config:
# 是否开启AR模式
active-record: true
# 是否在mapper.xml中生成查询结果Map元素
enable-result-map: true
# 是否在mapper.xml中生成基础列字段元素
enable-column-list: true
# 自定义文件命名,注意 %s 会自动填充表实体属性
entity-name: %sDO
# 配置包信息
package-info:
# 父包名
parent: com.example.mybatisplus.generator
# 实体类包名
entity: entity
# mapper接口层包名
mapper: dao
# service层包名
service: service
# service实现类包名
service-impl: service.impl
# controller包名
controller: controller
```
3. 运行代码生成器
在项目中创建一个 `CodeGenerator` 类,编写如下代码:
```java
public class CodeGenerator {
public static void main(String[] args) {
AutoGenerator generator = new AutoGenerator();
generator.setGlobalConfig(config());
generator.setDataSource(dataSourceConfig());
generator.setPackageInfo(packageConfig());
generator.setStrategy(strategyConfig());
generator.setTemplate(templateConfig());
generator.execute();
}
private static GlobalConfig config() {
GlobalConfig config = new GlobalConfig();
// 配置输出目录
config.setOutputDir(System.getProperty("user.dir") + "/src/main/java");
// 是否覆盖已有文件
config.setFileOverride(true);
// 是否开启 Swagger2 注解
config.setSwagger2(true);
// 开启 AR 模式
config.setActiveRecord(true);
// 配置基础表字段生成
config.setBaseColumnList(true);
// 配置通用 Mapper 的 baseResultMap
config.setBaseResultMap(true);
// 配置是否生成 XML 的注释
config.setXmlName("%sMapper");
config.setAuthor("作者名");
config.setOpen(false);
return config;
}
private static DataSourceConfig dataSourceConfig() {
DataSourceConfig config = new DataSourceConfig();
config.setUrl("jdbc:mysql://localhost:3306/mybatis_plus?serverTimezone=UTC");
config.setDriverName("com.mysql.jdbc.Driver");
config.setUsername("root");
config.setPassword("管理员密码");
return config;
}
private static PackageConfig packageConfig() {
PackageConfig config = new PackageConfig();
config.setParent("com.example.mybatisplus.generator");
config.setEntity("entity");
config.setMapper("dao");
config.setService("service");
config.setServiceImpl("service.impl");
config.setController("controller");
return config;
}
private static StrategyConfig strategyConfig() {
StrategyConfig config = new StrategyConfig();
// 配置表名的生成策略
config.setNaming(NamingStrategy.underline_to_camel);
config.setColumnNaming(NamingStrategy.underline_to_camel);
// 设置需要生成的表名
config.setInclude("user_info");
// 配置Lombok属性
config.setEntityLombokModel(true);
config.setRestControllerStyle(true);
// 配置是否生成注解@TableField
config.setEntityTableFieldAnnotationEnable(true);
// 配置通用 Mapper
config.setEntityBooleanColumnRemoveIsPrefix(true);
config.setRestControllerStyle(true);
config.setEntitySerialVersionUID(true);
config.setEntityBuilderModel(true);
config.setEntityColumnConstant(true);
return config;
}
private static TemplateConfig templateConfig() {
TemplateConfig config = new TemplateConfig();
// 配置自定义模板,不配置就用默认的
return config;
}
}
```
在 `main` 方法中设置好配置信息,并调用 `execute` 方法执行代码生成器即可。
4. 查看生成的代码
代码生成器会在程序运行的当前目录下生成生成的代码。在 IDEA 中可以通过 `Project` 窗口中的 `src/main/java` 目录打开生成代码目录,可以看到生成的 DAO、Mapper、Entity、Service、Controller 等代码。
阅读全文