<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<version>1.18.0</version>
<scope>provided</scope>
</dependency>
<!-- 添加代码生成器的依赖 -->
<dependency>
<groupId>org.apache.velocity</groupId>
<artifactId>velocity-engine-core</artifactId>
<version>2.0</version>
</dependency>

开发工具:STS

代码下载链接:Github管理代码

版本:

  Springboot:1.5.14.RELEASE

    使用2.0以上的Springboot,会报出一些异常。欢迎知道异常原因的大牛解惑。

  MybatisPlus:2.3

生成规则请参考:生成规则

前言:

我用过最方便的代码生成器、而且功能真的强大!

构建代码生成器:

1.添加依赖:

(1)代码生成器依赖

(2)Lombok依赖

使用lombok可以减少代码的开发

          <dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<version>1.18.0</version>
<scope>provided</scope>
</dependency>
<!-- 添加代码生成器的依赖 -->
<dependency>
<groupId>org.apache.velocity</groupId>
<artifactId>velocity-engine-core</artifactId>
<version>2.0</version>
</dependency>

2.编写生成器:

 package com.xm;

 import org.junit.Test;

 import com.baomidou.mybatisplus.enums.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.DbType;
import com.baomidou.mybatisplus.generator.config.rules.NamingStrategy; public class MpGenerator { @Test
public void create() { String tableName = "user"; /**
* 配置:
* 1.全局配置
* 2.数据源配置
* 3.策略配置
* 4.包名策略配置
* 5.整合配置
*/ //1.全局配置
GlobalConfig globalConfig = new GlobalConfig();
globalConfig
//设置代码生成路径
.setOutputDir("F:\\xm\\springboot\\Springboot_MybatisPlus\\src\\main\\java")
//设置作者
.setAuthor("xm")
//设置二级缓存的开闭
.setEnableCache(false)
//设置数据库id自增
.setIdType(IdType.AUTO)
//设置覆盖更新
.setFileOverride(true)
//设置去I
.setServiceName("%sService")
//设置生产结果映射map
.setBaseResultMap(true); //2.数据源配置
DataSourceConfig dataSourceConfig = new DataSourceConfig();
dataSourceConfig
//设置数据库类型
.setDbType(DbType.MYSQL)
.setUrl("jdbc:mysql://10.1.51.31:3306/xm?useSSL=true")
.setUsername("root")
.setPassword("cube1501")
.setDriverName("com.mysql.jdbc.Driver"); //3.策略配置
StrategyConfig strategyConfig = new StrategyConfig();
strategyConfig
//开启全局大写命名
.setCapitalMode(true)
//开启下划线转换
.setDbColumnUnderline(true)
//开启驼峰命名
.setNaming(NamingStrategy.underline_to_camel)
.setEntityLombokModel(true)
.setInclude(tableName); //4.包名策略配置
PackageConfig packageConfig = new PackageConfig();
packageConfig
.setParent("com.xm")
.setController("controller")
.setEntity("pojo")
.setMapper("mapper")
.setService("service")
.setServiceImpl("service.impl")
.setXml("mapper.xml"); //5.整合配置
AutoGenerator autoGenerator = new AutoGenerator();
autoGenerator
.setGlobalConfig(globalConfig)
.setDataSource(dataSourceConfig)
.setStrategy(strategyConfig)
.setPackageInfo(packageConfig); autoGenerator.execute(); } }

3.测试运行:


                                            2018-07-19

3、SpringBoot+MybatisPlus整合-------代码生成器的更多相关文章

  1. 2、SpringBoot+MybatisPlus整合-------BaseCRUD

    开发工具:STS 代码下载链接:GitHub管理代码 版本: Springboot:1.5.14.RELEASE 使用2.0以上的Springboot,会报出一些异常.欢迎知道异常原因的大牛解惑. M ...

  2. SpringBoot+Mybatis-Plus整合Sharding-JDBC5.1.1实现单库分表【全网最新】

    一.前言 小编最近一直在研究关于分库分表的东西,前几天docker安装了mycat实现了分库分表,但是都在说mycat的bug很多.很多人还是倾向于shardingsphere,其实他是一个全家桶,有 ...

  3. SpringBoot+MyBatisPlus整合时提示:Invalid bound statement(not found):**.dao.UserDao.queryById

    场景 在使用SpringBoot+MyBatisPlus搭建后台启动项目时,使用EasyCode自动生成代码. 在访问后台接口时提示: Invilid bound statement (not fou ...

  4. 1、SpringBoot+MybatisPlus整合

    <?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://mave ...

  5. SpringBoot Mybatis-Plus 整合 dynamic-datasource-spring-boot-starter 对数据库进行读写分离

    准备工作 对 MySql 进行主从搭建 引入 dynamic-datasource-spring-boot-starter 坐标 引入 druid-spring-boot-starter 坐标 对应框 ...

  6. SpringBoot系列——MyBatis-Plus整合封装

    前言 MyBatis-Plus是一款MyBatis的增强工具(简称MP),为简化开发.提高效率,但我们并没有直接使用MP的CRUD接口,而是在原来的基础上封装一层通用代码,单表继承我们的通用代码,实现 ...

  7. SpringBoot+Mybatis+MybatisPlus整合实现基本的CRUD操作

    SpringBoot+Mybatis+MybatisPlus整合实现基本的CRUD操作 1> 数据准备 -- 创建测试表 CREATE TABLE `tb_user` ( `id` ) NOT ...

  8. SpringBoot之【mybatisplus】代码生成器

    1.概述. AutoGenerator 是 MyBatis-Plus 的代码生成器,通过 AutoGenerator 可以快速生成 Entity.Mapper.Mapper XML.Service.C ...

  9. SpringBoot&MyBatisPlus

    5. SpringBoot 学习目标: 掌握基于SpringBoot框架的程序开发步骤 熟练使用SpringBoot配置信息修改服务器配置 基于SpringBoot完成SSM整合项目开发 5.1 入门 ...

随机推荐

  1. Cookie和Session入门(一)

    目录一)背景介绍二)Cookie机制三)Session机制四)两者比较五)参考资料链接一)背景介绍Cookie与Session是常用的会话跟踪技术.1.Cookie通过在客户端记录信息确定用户身份,S ...

  2. dom4j使用

    http://www.cnblogs.com/zfc2201/archive/2011/08/16/2141441.html http://www.blogjava.net/i369/articles ...

  3. JavaScript操作符(=?,)优先级

    JavaScript操作符优先级: 关于最后3个运算符的优先级比较,下面通过一个实例来具体说明: var a,b,c; a = 3,4,5; b = a--,--a,a; c = a ? b++ : ...

  4. java.lang.ArrayIndexOutOfBoundsException: 160

    项目突然出现这个问题java.lang.ArrayIndexOutOfBoundsException: 160,找了好大半天没有找出来哪里的问题,最后发现时fastjson.jar 版本太低了造成的, ...

  5. javaSE练习3——数组

    一.编写一个简单程序,要求数组长度为5,分别赋值10,20,30,40,50,在控制台输出该数组的值. package com.test; public class t01 { public stat ...

  6. Net-SNMP(V3协议)安装配置笔记(CentOS 5.2)(转)

    原出处:http://blog.ihipop.info/2010/03/722.html 为了这颗仙人掌(cacti),我必须先部署(Net-SNMP), 同时我为了安全因素,也为了简便考虑,决定采用 ...

  7. input type="file"获取文件名方法

    文件上传比较丑,样式调整时会有一个获取文件名,或者包含文件路径的文件名的方法 html代码 <div class="file-box"> <form id=&qu ...

  8. 轻松解决 Eclipse Indigo 3.7 中文字体偏小,完美 Consolas 微软雅黑混合字体!(转)

    在 Windows 7 下初始后化,发现界面变化不大,但中文字体却面目全非,小得根本看不见,而且也看起来很不爽.其实这是 Eclipse 的默认字体换了,以前的一直是 Courier New ,这次e ...

  9. 视频SharePoint 2010 大局观 By 陈希章[zt]

    SharePoint 2010 大局观 By 陈希章 http://hi.baidu.com/jinzesudawei/item/9d0adace8cbcaf2c47d5c0fc

  10. sqlalchemy的cascades

    http://docs.sqlalchemy.org/en/latest/orm/cascades.html class Order(Base): __tablename__ = 'order' it ...