基于Mybatis plus 自动代码生成器的实现代码

下面就为您详细讲解“基于Mybatis plus 自动代码生成器的实现代码”的完整攻略。首先我们来了解一下Mybatis plus自动代码生成器。

Mybatis plus是Mybatis的增强版,提供了很多实用的功能,其中就包括代码生成器。Mybatis plus代码生成器可以根据数据库表生成对应的JavaBean、Mapper、Service等代码,大大提高了开发效率,减轻了开发负担。

下面是基于Mybatis plus自动代码生成器的实现代码的具体攻略:

步骤一:引入依赖

首先,在maven中引入Mybatis plus的依赖,代码如下:

    <!-- 引入Mybatis plus -->
    <dependency>
      <groupId>com.baomidou</groupId>
      <artifactId>mybatis-plus-boot-starter</artifactId>
      <version>3.2.0</version>
    </dependency>

步骤二:创建数据表

创建一张数据表,这里以学生表(student)为例。表结构如下:

CREATE TABLE `student` (
  `id` int(11) NOT NULL AUTO_INCREMENT COMMENT '主键ID',
  `name` varchar(30) DEFAULT NULL COMMENT '姓名',
  `age` int(3) DEFAULT NULL COMMENT '年龄',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8mb4 COMMENT='学生表';

步骤三:配置Mybatis plus

在application.yml配置文件中添加Mybatis plus的配置,具体如下:

mybatis-plus:
  mapper-locations: classpath*:mapper/*.xml
  type-aliases-package: org.example.pojo
  global-config:
    db-config:
      id-type: auto

mapper-locations:指定Mapper文件所在的位置,这里配置的是classpath:mapper/.xml,表示Mapper文件在classpath路径下的mapper目录中,且后缀为.xml。

type-aliases-package:指定实体类所在的包路径。

global-config:全局配置项

id-type:主键生成策略,这里配置的是auto,表示自动识别。

步骤四:配置代码生成器

在配置类中添加Mybatis plus代码生成器的配置,代码如下:

@Configuration
public class MybatisPlusConfig {
    @Autowired
    private DataSource dataSource;

    @Bean
    public CodeGenerator mpg() {
        // 代码生成器
        CodeGenerator mpg = new CodeGenerator();
        // 全局配置
        GlobalConfig gc = new GlobalConfig();
        String projectPath = System.getProperty("user.dir");
        gc.setOutputDir(projectPath + "/src/main/java");
        gc.setAuthor("Your Name");
        gc.setOpen(false);
        gc.setEntityName("%sEntity");
        gc.setMapperName("%sDao");
        gc.setXmlName("%sMapper");
        gc.setServiceName("I%sService");
        gc.setServiceImplName("%sServiceImpl");
        gc.setControllerName("%sController");
        gc.setIdType(IdType.AUTO);
        mpg.setGlobalConfig(gc);
        // 数据源配置
        DataSourceConfig dsc = new DataSourceConfig();
        dsc.setUrl("jdbc:mysql://localhost:3306/test");
        // dsc.setSchemaName("public");
        dsc.setDriverName("com.mysql.cj.jdbc.Driver");
        dsc.setUsername("root");
        dsc.setPassword("123456");
        mpg.setDataSource(dsc);
        // 包配置
        PackageConfig pc = new PackageConfig();
        pc.setModuleName(null);
        pc.setParent("org.example");
        pc.setEntity("pojo");
        mpg.setPackageInfo(pc);
        // 开启生成
        mpg.execute();
        return mpg;
    }
}

dataSource:注入数据源。

mpg:创建代码生成器实例。

GlobalConfig:全局配置。

outputDir:代码输出路径,这里配置的是/src/main/java。

author:作者名字。

open:是否打开输出目录(默认是false)。

entityName:实体类命名方式,这里配置的是%sEntity,表示实体类名字以Entity结尾。

mapperName:Mapper命名方式,这里配置的是%sDao,表示Mapper名字以Dao结尾。

xmlName:XML命名方式,这里配置的是%sMapper,表示XML文件名字以Mapper结尾。

serviceName:Service命名方式,这里配置的是I%sService,表示Service名字以I开头。

serviceImplName:ServiceImpl命名方式,这里配置的是%sServiceImpl,表示ServiceImpl名字以ServiceImpl结尾。

controllerName:Controller命名方式,这里配置的是%sController,表示Controller名字以Controller结尾。

idType:主键生成方式,这里配置了IdType.AUTO,表示自动识别主键类型。

DataSourceConfig:数据源配置。

url:数据库连接地址。

driverName:数据库驱动名。

username:数据库用户名。

password:数据库密码。

PackageConfig:包配置。

moduleName:模块名字。

parent:父包名字。

entity:实体类所在的包名字。

execute:代码生成器执行。

两条示例:

示例1:生成Student实体类、StudentDao、StudentMapper、StudentService和StudentServiceImpl。

示例2:生成Course实体类、CourseDao、CourseMapper、CourseService和CourseServiceImpl。

以上就是基于Mybatis plus自动代码生成器的实现代码的完整攻略,如果您还有疑问或需要了解更多关于Mybatis plus的知识,请随时咨询。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:基于Mybatis plus 自动代码生成器的实现代码 - Python技术站

(0)
上一篇 2023年5月20日
下一篇 2023年5月20日

相关文章

  • java Timer测试定时调用及固定时间执行代码示例

    “java Timer测试定时调用及固定时间执行代码示例”的完整攻略 简介 在 Java 中,我们可以使用 Timer 类来实现定时调用和延时执行代码的功能。在本文中,我们将会详细的介绍 Timer 类的使用方法,并且提供两个实例来演示它的应用。 Timer 类 Timer 类提供了一种简单的机制,用于重复或延迟执行任务。任务可以是 Runnable 接口的…

    Java 2023年5月20日
    00
  • Vue如何解决每次发版都要强刷清除浏览器缓存问题

    Vue可以通过以下三种方式解决每次发版都要强刷清除浏览器缓存的问题: 1. 禁用浏览器缓存 在Vue的配置文件中,设置productionSourceMap和filenameHashing为false,禁用浏览器的缓存。该设置会让每次打包生成的文件名都带有哈希值,以此保持每次生成的文件的唯一性。这样做可以确保所有用户在一次迭代后可以看到最新的内容。 示例: …

    Java 2023年6月15日
    00
  • 解决maven maven.compiler.source和maven.compiler.target的坑

    当使用 Maven 进行 Java 项目的构建时,有时候我们需要指定编译时使用的 JDK 版本,这时就需要通过设置 maven.compiler.source 和 maven.compiler.target 属性来实现。 但是在使用过程中,由于不同 JDK 版本之间的兼容性问题,可能会出现一些奇怪的编译错误,如“类或接口已过时”、“方法不存在”等,这时我们就…

    Java 2023年6月2日
    00
  • 详解Java豆瓣电影爬虫——小爬虫成长记(附源码)

    标题:详解Java豆瓣电影爬虫——小爬虫成长记(附源码)攻略 介绍:本篇攻略是关于Java编写豆瓣电影爬虫的详细讲解,附带源代码。本文将帮助读者了解如何搭建基础环境、获取网页源代码、解析数据、存储数据等方面的知识点,以及具体如何编写豆瓣电影爬虫,如何运用Java开发一个个小而强大的爬虫。 搭建环境: 在开始写Java爬虫之前,你需要先安装Java SE Ru…

    Java 2023年5月20日
    00
  • kafka手动调整分区副本数的操作步骤

    当需要手动调整Kafka集群中的某个主题的分区副本数时,可以通过添加或删除分区副本来实现。下面是手动调整分区副本数的操作步骤: 打开Kafka集群管理界面,例如Kafka Manager或Apache Kafka Web Console。 选择需要调整分区副本数的主题,点击进入主题管理页面。 打开分区列表,选择需要调整分区副本数的分区(例如第3个分区)。 点…

    Java 2023年5月20日
    00
  • 详解Java读取Jar中资源文件及示例代码

    下面是详细讲解「详解Java读取Jar中资源文件及示例代码」的完整攻略。 1. 了解Java读取Jar中资源文件的原理 在Java中,读取Jar中资源文件的流程通常如下: 通过ClassLoader加载Jar包。 通过ClassLoader获取资源文件的URL。 通过URL打开资源文件的流。 读取资源文件的流中的内容。 2. 如何读取Jar中的资源文件? 当…

    Java 2023年5月20日
    00
  • java操作mysql入门代码实例(含插入、更新和查询)

    首先简述一下本文所讲解的内容。本文将会讲述Java操作MySQL中的增删改查基础操作,主要通过JDBC连接MySQL数据库,并通过代码实现简单的增删改查。 文章结构如下: 准备工作 连接数据库 插入数据 修改数据 查询数据 关闭连接 1. 准备工作 在开始编写Java操作MySQL入门代码实例前,需要以下准备工作: 安装MySQL数据库并创建一个新的数据库;…

    Java 2023年5月19日
    00
  • 最新手机号码、电话号码正则表达式

    作为网站作者,在网站上提供合适的正则表达式能够帮助用户更好地填写信息,本文将详细讲解如何编写符合实际需求的最新手机号码、电话号码正则表达式。 最新手机号正则表达式 先介绍最新的中国手机号码格式:手机号码为11位数字,以13、14、15、17、18、19开头。其中,17、19开头是最新的号段。而且还有一些虚拟运营商的号码前缀不在以上号码段中,例如:170等。 …

    Java 2023年5月20日
    00
合作推广
合作推广
分享本页
返回顶部