Spring Mybatis-Plus一键代码结构生成
小前端闲来无事接触接触JAVA,刚学了下Spring,打算采用JPA去开发,后面了解到了Mybatis-Plus的快乐之处,就想把心得分享一下,这里有些是借鉴别人的地方。
首先引入依赖
<!-- mybatis-plus --><dependency><groupId>com.baomidou</groupId><artifactId>mybatis-plus-boot-starter</artifactId><version>3.3.1.tmp</version></dependency><dependency><groupId>com.baomidou</groupId><artifactId>mybatis-plus-generator</artifactId><version>3.3.1.tmp</version></dependency><!-- 添加 模板引擎 依赖 --><dependency><groupId>org.apache.velocity</groupId><artifactId>velocity-engine-core</artifactId><version>2.2</version></dependency>
然后maven执行包下载操作,等包下载完成后,在test测试下新建一个代码生成器测试类TextCodeGenerate,这里自己随便命名,然后就开始写一个静态方法,先默认构造对象AutoGenerator
AutoGenerator auto = new AutoGenerator();
接着,进行第一步:全局配置
// 全局配置GlobalConfig glob = new GlobalConfig();// 填写代码生成的目录 (需要修改)String projectPath = "E:\\JavaBook\\spring-mybatisPlus-study";// 拼接出代码最终输出的目录glob.setOutputDir(projectPath + "/src/main/java");// 配置开发者信息 (可选) (需要修改)glob.setAuthor("sumer");// 配置是否打开目录 false 为不打开 (可选)glob.setOpen(false);// 重新生成文件时是否覆盖(重要) (可选)glob.setFileOverride(true);// 配置文件生成策略 此处为 ASSIGN_ID (可选)glob.setIdType(IdType.ASSIGN_ID);// 配置日期类型 此处为 ONLY_DATE (可选)glob.setDateType(DateType.ONLY_DATE);// 默认生成service 会有I前缀glob.setServiceName("%sService");auto.setGlobalConfig(glob);
接着实行第二部操作:数据源配置
// 数据源配置 (需要修改)DataSourceConfig data = new DataSourceConfig();// 配置数据库url 地址data.setUrl("jdbc:mysql://localhost:3306/sumerPlus?useUnicode=true&useSSL=false&characterEncoding=utf8&serverTimezone=Asia/Shanghai");// 配置数据库驱动data.setDriverName("com.mysql.cj.jdbc.Driver");// 配置数据库连接用户名data.setUsername("root");// 配置数据库链接密码data.setPassword("123456");auto.setDataSource(data);
然后,进行第三步:包配置
// 包配置 (需要修改)PackageConfig pack = new PackageConfig();// 配置父包名pack.setParent("com.sumer");// 配置模块名pack.setModuleName("");// 配置 entity 包名pack.setEntity("entity");// 配置 mapper 包名pack.setMapper("mapper");// 配置 service 包名pack.setService("service");// 配置 controller 包名pack.setController("controller");auto.setPackageInfo(pack);
其次,还需要对数据库进行一些映射操作:策略配置
// 策略配置(数据库表配置)
StrategyConfig sql = new StrategyConfig();
// 指定表名(可指定多个表名,用,分隔开来)(添加数据库表)
sql.setInclude("user","job");
// 配置数据表与实体类名之间映射的策略
sql.setNaming(NamingStrategy.underline_to_camel);
// 配置数据库表的字段与实体类的属性名之间的映射的策略
sql.setColumnNaming(NamingStrategy.underline_to_camel);
// 配置 lombok 模式
sql.setEntityLombokModel(true);
// 配置 rest 风格的控制器 (@RestController)
sql.setRestControllerStyle(true);
// 配置驼峰转连字符
sql.setControllerMappingHyphenStyle(true);
// 配置表名前缀,生成实体时去除表前缀
sql.setTablePrefix("");
auto.setStrategy(sql);
最终,执行代码生成命令
auto.execute();
整个代码
package com.sumer;import com.baomidou.mybatisplus.annotation.IdType;
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.DateType;
import com.baomidou.mybatisplus.generator.config.rules.NamingStrategy;
import org.junit.jupiter.api.Test;public class TextCodeGenerate { // 代码生成器测试类@Testvoid autoGenerate(){// 代码生成器AutoGenerator auto = new AutoGenerator();// 全局配置GlobalConfig glob = new GlobalConfig();// 填写代码生成的目录 (需要修改)String projectPath = "E:\\JavaBook\\spring-mybatisPlus-study";// 拼接出代码最终输出的目录glob.setOutputDir(projectPath + "/src/main/java");// 配置开发者信息 (可选) (需要修改)glob.setAuthor("sumer");// 配置是否打开目录 false 为不打开 (可选)glob.setOpen(false);// 重新生成文件时是否覆盖(重要) (可选)glob.setFileOverride(true);// 配置文件生成策略 此处为 ASSIGN_ID (可选)glob.setIdType(IdType.ASSIGN_ID);// 配置日期类型 此处为 ONLY_DATE (可选)glob.setDateType(DateType.ONLY_DATE);// 默认生成service 会有I前缀glob.setServiceName("%sService");auto.setGlobalConfig(glob);// 数据源配置 (需要修改)DataSourceConfig data = new DataSourceConfig();// 配置数据库url 地址data.setUrl("jdbc:mysql://localhost:3306/sumerPlus?useUnicode=true&useSSL=false&characterEncoding=utf8&serverTimezone=Asia/Shanghai");// 配置数据库驱动data.setDriverName("com.mysql.cj.jdbc.Driver");// 配置数据库连接用户名data.setUsername("root");// 配置数据库链接密码data.setPassword("123456");auto.setDataSource(data);// 包配置 (需要修改)PackageConfig pack = new PackageConfig();// 配置父包名pack.setParent("com.sumer");// 配置模块名pack.setModuleName("");// 配置 entity 包名pack.setEntity("entity");// 配置 mapper 包名pack.setMapper("mapper");// 配置 service 包名pack.setService("service");// 配置 controller 包名pack.setController("controller");auto.setPackageInfo(pack);// 策略配置(数据库表配置)StrategyConfig sql = new StrategyConfig();// 指定表名(可指定多个表名,用,分隔开来)(添加数据库表)sql.setInclude("user","job");// 配置数据表与实体类名之间映射的策略sql.setNaming(NamingStrategy.underline_to_camel);// 配置数据库表的字段与实体类的属性名之间的映射的策略sql.setColumnNaming(NamingStrategy.underline_to_camel);// 配置 lombok 模式sql.setEntityLombokModel(true);// 配置 rest 风格的控制器 (@RestController)sql.setRestControllerStyle(true);// 配置驼峰转连字符sql.setControllerMappingHyphenStyle(true);// 配置表名前缀,生成实体时去除表前缀sql.setTablePrefix("");auto.setStrategy(sql);// 执行代码生成操作auto.execute();}}
这个时候,你会看到这样子
这个时候,自动化配置就好了,最后,记得在执行程序入口处添加mapper路径,指定要变成实现类的接口所在的包
这时候,就能快乐的去进行后端编写了!
Spring Mybatis-Plus一键代码结构生成相关推荐
- Mybatis最入门---代码自动生成(generatorConfig.xml配置)
[一步是咫尺,一步即天涯] 经过前文的叙述,各位看官是不是已经被Mybatis的强大功能给折服了呢?本文我们将介绍一个能够极大提升我们开发效率的插件:即代码自动生成.这里的代码自动生成包括,与数据库一 ...
- java 云架构_java版Spring Cloud云架构代码结构构建
本篇我们根据架构图进行代码的构建.根据微服务化设计思想,结合spring cloud一些优秀的项目,如服务发现.治理.配置化管理.路由负载.安全控制等优秀解决方案,使用Maven技术将框架进行模块化. ...
- 淘淘商城项目mysql服务器_SpringMVC+Spring+Mybatis+Mysql+Maven+Svn[ 淘淘商城项目环境搭建 ]...
背景:淘淘商城项目的环境搭建 说明:采用SpringMVC+Spring+Mybatis+Mysql+Maven+Svn结构搭建,在开发之中可以参考其结构和搭建步骤去搭建实际的工程项目 工程结构简图: ...
- Spring Boot项目利用MyBatis Generator进行数据层代码自动生成
概 述 MyBatis Generator (简称 MBG) 是一个用于 MyBatis和 iBATIS的代码生成器.它可以为 MyBatis的所有版本以及 2.2.0之后的 iBATIS版本自动生成 ...
- Spring Boot (七)MyBatis代码自动生成和辅助插件
一.简介 1.1 MyBatis Generator介绍 MyBatis Generator 是MyBatis 官方出品的一款,用来自动生成MyBatis的 mapper.dao.entity 的框架 ...
- 【Spring框架家族】mybatis generator代码自动生成(看得上眼直接拿去用即可)
小工具,直接上代码,有大佬看的上,拿去复制改改相关参数就好 基于idea上使用的 pom文件 <build><plugins><plugin><groupId ...
- 懒人 IDEA 插件推荐: EasyCode 一键帮你生成所需代码~
点击上方 好好学java ,选择 星标 公众号 重磅资讯.干货,第一时间送达 今日推荐:牛人 20000 字的 Spring Cloud 总结,太硬核了~ 作者:HeloWxl 链接:https:// ...
- spring cloud云服务架构 - particle云架构代码结构讲解
上一篇我们介绍了spring cloud云服务架构 - particle云架构代码结构,简单的按照几个大的部分去构建代码模块,让我们来回顾一下: 第一部分: 针对于普通服务的基础框架封装(entity ...
- mybatis根据表逆向自动化生成代码(自动生成实体类、mapper文件、mapper.xml文件)
若采用mybatis框架,数据库新建表,手动编写的话,需要编写大量的实体类.mapper文件.mapper.xml文件,都是一些重复且有规律的工作. 我们可以引用插件,然后做配置,自动生成这些文件,提 ...
最新文章
- Postfix+Amavisd-new+Spamassassin+ClamAV整合安装
- php过滤两个坐标,php判断两个坐标的方位角
- 编程之美计算0到N中包含数字1的个数
- SASS的一些使用体会(安装-配置-开启firefox的调试)
- c语言编译 64位,cmake – 编译32位和64位
- java中动态顺序死锁问题
- esxi安装openwrt_双软路由安装——ROS安装、上网、DNS缓存、常用设置(小白教程)...
- 深度学习表征的不合理有效性——从头开始构建图像搜索服务(一)
- 修复迁移后Net Standard项目中的错误
- Python笔记-字符串转json
- git 使用_Git-介绍与使用
- 经济学专业向计算机方向创业,基于市场需求的经济学专业人才培养模式研究
- 数据库学习--DDL(数据库定义语言)
- 智能门锁主要有哪些优势,具体是怎么分类的?
- 映美精IC Imageing Control .net控件调试问题
- 定积分定义求极限新花样
- 人,总要敢于直面自己的惨淡,才能挺直腰杆
- 产品数据管理(PDM)技术概述
- Google Maven Replacer Plugin插件详解
- IDEA 类中找不到main方法请将main方法定义为public static void main. 否则 JavaFX 应用程序类必须扩展javafx.application.Applicati