基于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的Hibernate框架报错“MappingException”的原因和解决方法

    Java Hibernate框架报错“MappingException”的原因与解决办法 当使用Hibernate框架时,可能会遇到“MappingException”错误。这个错误通常是由于以下原因之一引起的: 映射文件错误:如果您的映射文件存在问题,则可能会出现此错误。在这种情况下,需要检查您的映射文件并确保它们正确。 实体类错误:如果您的实体类存在问题…

    Java 2023年5月4日
    00
  • SpringBoot关于自定义注解实现接口幂等性方式

    对于SpringBoot自定义注解实现接口幂等性,一般可以通过以下几个步骤来完成: 1. 创建幂等性注解 幂等性注解一般包含以下内容: 注解名称:一般用 @Idempotent 表示。 作用范围:一般有方法级别和参数级别两种。 验证方式:一般有请求参数和请求头两种。 具体实现示例: @Target({ElementType.METHOD, ElementTy…

    Java 2023年5月20日
    00
  • mybatis框架入门学习教程

    下面我将详细讲解”mybatis框架入门学习教程”的完整攻略,该攻略包括以下几个部分: 一、Mybatis框架概述 Mybatis是一个开源的持久层框架,它支持自定义SQL、存储过程调用和高级映射,可以将结果集映射到Java对象中。它主要有以下优点: SQL与程序解耦:Mybatis的SQL存放在XML文件中,与Java程序相分离,使程序易于维护。 灵活性高…

    Java 2023年5月19日
    00
  • SpringBoot首页设置解析(推荐)

    下面我会详细讲解一下 “SpringBoot首页设置解析(推荐)” 的完整攻略。 一、前言 SpringBoot是目前最流行的JavaWeb框架之一。通过使用SpringBoot可以轻松创建一个Web应用程序。在创建Web应用程序时,我们通常会有自己想要的首页,那么如何设置一个网站的首页呢? 二、在SpringBoot中设置首页 在SpringBoot中,我…

    Java 2023年5月15日
    00
  • spring boot2.0总结介绍

    Spring Boot 2.0 总结介绍 Spring Boot 作为一款基于 Spring 框架的快速开发框架,在各种 Web 应用开发过程中被广泛使用。此次我们将对 Spring Boot 2.0 进行总结介绍,分享如何快速搭建、配置和优化 Spring Boot 2.0。 快速搭建 Spring Boot 2.0 搭建 Spring Boot 2.0 …

    Java 2023年5月15日
    00
  • 详解Spring MVC CORS 跨域

    详解Spring MVC CORS 跨域 CORS(Cross-Origin Resource Sharing)是一种Web浏览器的安全机制,用于限制跨域请求。在Spring MVC中,我们可以使用@CrossOrigin注解来处理CORS跨域请求。 @CrossOrigin注解 @CrossOrigin注解是Spring MVC提供的一个注解,它可以用来处…

    Java 2023年5月18日
    00
  • Java实现基础银行ATM系统

    Java实现基础银行ATM系统攻略 系统概述 本系统旨在实现一个基础的银行ATM系统,主要功能包括用户登录、账户查询、取款、存款、转账等。 系统设计 数据库设计 本系统采用MySQL数据库来存储用户信息、账户信息等,包括以下两张表: 用户信息表 ID:用户ID,唯一标识用户 Name:用户姓名 Phone:电话号码 Password:密码,用于登录ATM系统…

    Java 2023年5月24日
    00
  • Javascript与PHP验证用户输入URL地址是否正确

    当我们需要用户输入URL地址时,我们需要验证用户输入的URL地址格式是否正确,这时候可以借助JavaScript和PHP两种语言来实现。 JavaScript验证用户输入URL地址是否正确 JavaScript提供了正则表达式的支持,可以利用正则表达式对用户输入的URL地址进行验证。 示例1:以下是利用JavaScript验证URL地址的示例代码。 func…

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