mybatis-plus的代码生成器的使用

0.注意

1.文章代码

代码链接: 本文章的代码generator-test

2.生成内容

mybatis-plus的代码生成器会按照数据库表生成对应的实体类,以及实体类对应mapper,mapper.xml,service,serviceImpl,controller.所以我们不需要建立文件夹。

3.本次未生成内容

我使用的springboot是2.7.0与代码生成器生成的swagger发生冲突,所以不会生成swagger。本次只展示后端内容,所以也不会使用Freemarker引擎模板。

1.建立项目,添加依赖

建立一个SpringBoot项目,再添加如下依赖

 		<dependency>
            <groupId>com.baomidou</groupId>
            <artifactId>mybatis-plus</artifactId>
            <version>3.5.1</version>
        </dependency>
        <!--        代码生成器的依赖-->
        <dependency>
            <groupId>com.baomidou</groupId>
            <artifactId>mybatis-plus-generator</artifactId>
            <version>3.5.1</version>
        </dependency>
        <!--Velocity     代码生成器需要的依赖-->
        <dependency>
            <groupId>org.apache.velocity</groupId>
            <artifactId>velocity-engine-core</artifactId>
            <version>2.2</version>
        </dependency>

2.项目的配置文件

server:
  port: 8082

spring:
  datasource:
    driver-class-name: com.mysql.cj.jdbc.Driver
    username: root
    password: mysql
    url: jdbc:mysql://localhost:3306/blog-demo?useUnicode=true&characterEncoding=utf-8&serverTimezone=Asia/Shanghai
  mvc:
    view:
      prefix: /
      suffix: .html
#标注mapper.xml文件的位置
mybatis-plus:
  type-aliases-package: hhf.mybatisplusdemo.entity
  mapper-locations: classpath:/hhf/generator/mapper/*.xml

3.建立代码生成器的类

public class Generator {
    public static void main(String[] args) {
        String sqlUrl = "jdbc:mysql://localhost:3306/blog-demo?useUnicode=true&characterEncoding=utf-8&serverTimezone=Asia/Shanghai";
        String username = "root";
        String password = "mysql";
        String mapperXmlUrl = "E://codes//gs//generator-test//src//main//resources//hhf//generatortest//mapper";

        FastAutoGenerator.create(sqlUrl, username, password)
                .globalConfig(builder -> {
                    builder.author("hhf") // 设置作者
                            // .enableSwagger()     //这里我们不适用swagger
                            .fileOverride() // 覆盖已生成文件
                            .outputDir("E://codes//gs//generator-test//src//main//java"); // 指定输出目录
                })
                .packageConfig(builder -> {
                    builder.parent("hhf") // 设置父包名
                            .moduleName("generatortest") // 设置父包模块名
                            .pathInfo(Collections.singletonMap(OutputFile.mapperXml, mapperXmlUrl)); // 设置mapperXml生成路径
                })
                .strategyConfig(builder -> {
                    builder.addInclude("student") // 设置需要生成的表名
                            .addTablePrefix(); // 设置过滤表前缀 可以设置"t_"
                })
                // .templateEngine(new FreemarkerTemplateEngine()) // 这里不使用Freemarker引擎模板,默认的是Velocity引擎模板
                .execute();



    }
}

注意这里的指定输出目录+设置父包名+设置父包模块名 就是你要生成文件夹的存放目录
在这里插入图片描述

4.生成代码,以及需要添加的注解

运行Generator,生成文件在这里插入图片描述

1.添加注解

1mapper接口需要添加注解

@Mapper

service接口需要添加注解

@Service

serviceImpl实现类需要添加注解

@Service("实现的接口名")     //例如@Service("IStudentService")

SpringBoot运行类上加

@MapperScan("mapper包的相对路径")
  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值