栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

mybatis-plus自动生成代码的示例代码

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

mybatis-plus自动生成代码的示例代码

一、介绍

本教程将介绍如何使用 mybatis-plus 工具自动给我们生成 Controller、Service、Entity、Mapper、Mapper.xml 层代码

要求:

① 生成的Controller类,需要继承 baseController

② 生成的Entity 类,需要继承 baseEntity

③ 生成的 Service,默认名称下是以 I 开头的接口, 在生成Service层代码中需要把这个 I 去掉

二、实现步骤

① 在数据库中创建好 数据库 与 要生成代码对应的表

这里拿 user 表举例

DROp TABLE IF EXISTS user;
 
CREATE TABLE user
(
 id BIGINT(20) NOT NULL COMMENT '主键ID',
 name VARCHAr(30) NULL DEFAULT NULL COMMENT '姓名',
 age INT(11) NULL DEFAULT NULL COMMENT '年龄',
 email VARCHAr(50) NULL DEFAULT NULL COMMENT '邮箱',
 PRIMARY KEY (id)
);
 
DELETE FROM user;
 
INSERT INTO user (id, name, age, email) VALUES
(1, 'Jone', 18, 'test1@baomidou.com'),
(2, 'Jack', 20, 'test2@baomidou.com'),
(3, 'Tom', 28, 'test3@baomidou.com'),
(4, 'Sandy', 21, 'test4@baomidou.com'),
(5, 'Billie', 24, 'test5@baomidou.com');

② 创建 一个SpringBoot 项目,其中 pom.xml 内容如下:



  4.0.0
  
    org.springframework.boot
    spring-boot-starter-parent
    2.1.11.RELEASE
     
  
  com.lcy
  mybatis-plus-demo
  0.0.1-SNAPSHOT
  mybatis-plus-demo
  Demo project for Spring Boot
 
  
    1.8
  
 
  
    
      org.springframework.boot
      spring-boot-starter-web
    
 
    
      org.projectlombok
      lombok
      true
    
    
      org.springframework.boot
      spring-boot-starter-test
      test
    
 
    
      com.baomidou
      mybatis-plus-boot-starter
      3.3.0
    
 
    
      mysql
      mysql-connector-java
      5.1.35
    
 
    
      com.baomidou
      mybatis-plus-generator
      3.3.0
    
    
      org.apache.velocity
      velocity-engine-core
      2.1
    
  
 
  
    
      
 org.springframework.boot
 spring-boot-maven-plugin
      
    
  
 

③ 创建代码生成类

package com.lcy.demo.generator;
 
import com.baomidou.mybatisplus.generator.AutoGenerator;
import com.baomidou.mybatisplus.generator.config.DataSourceConfig;
import com.baomidou.mybatisplus.generator.config.GlobalConfig;
import com.baomidou.mybatisplus.generator.config.PackageConfig;
import com.baomidou.mybatisplus.generator.config.StrategyConfig;
import com.baomidou.mybatisplus.generator.config.rules.NamingStrategy;
 
public class MysqlGenerator {
  public static void main(String[] args) {
    AutoGenerator mpg = new AutoGenerator();
 
    GlobalConfig gc = new GlobalConfig();
    String projectPath = System.getProperty("user.dir");
    gc.setOutputDir(projectPath + "/src/main/java");
    gc.setAuthor("liangcy");  // 作者
    gc.setOpen(false);   //生成代码后是否打开文件夹
    gc.setServiceName("%sService"); // 设置Service接口生成名称,这样生成接口前面就不会有 I
    mpg.setGlobalConfig(gc);
 
    DataSourceConfig dsc = new DataSourceConfig();
    dsc.setUrl("jdbc:mysql://localhost:3306/mybatis-plus-demo?useUnicode=true&serverTimezone=GMT&useSSL=false&characterEncoding=utf8");
    dsc.setDriverName("com.mysql.jdbc.Driver");
    dsc.setUsername("root");
    dsc.setPassword("123456");
    mpg.setDataSource(dsc);
 
    // 包配置
    PackageConfig pc = new PackageConfig();
    pc.setModuleName("sys"); // 模块名称, 这里可以根据不同模块来写
    pc.setParent("com.lcy.demo"); // 父包名
    mpg.setPackageInfo(pc);
 
    // 策略配置
    StrategyConfig strategy = new StrategyConfig();
    strategy.setNaming(NamingStrategy.underline_to_camel);
    strategy.setColumnNaming(NamingStrategy.underline_to_camel);
    strategy.setSuperControllerClass("com.lcy.demo.sys.controller.baseController");
    strategy.setSuperEntityClass("com.lcy.demo.sys.entity.baseEntity");
    strategy.setEntityLombokModel(true);
    strategy.setInclude("user"); // 如果要生成多个,这里可以传入String[]
    mpg.setStrategy(strategy);
    mpg.execute();
  }
 
}
补充说明:
  • 代码生成过程中用到了 Lombok 插件, 因此需要在IDEA 中安装好 Lombok插件
  • 如果我们删除了生成的代码, 包名可能会飘红, 这时我们需要 更新一下maven工程,飘红就会消失
  • 代码将生成在我们设置的 父包名 + 模块名中

到此这篇关于mybatis-plus自动生成代码的示例代码的文章就介绍到这了,更多相关mybatis-plus 自动生成代码内容请搜索考高分网以前的文章或继续浏览下面的相关文章希望大家以后多多支持考高分网!

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/129792.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号