先继承Mybatis的插件适配器, 写一个自己的插件

package org.mybatis.generator.plugins;import org.mybatis.generator.api.IntrospectedColumn;
import org.mybatis.generator.api.IntrospectedTable;
import org.mybatis.generator.api.PluginAdapter;
import org.mybatis.generator.api.dom.java.Interface;
import org.mybatis.generator.api.dom.java.Method;
import org.mybatis.generator.api.dom.java.TopLevelClass;import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.List;/*** @author Liweizhou  2018/6/6*/
public class LombokPlugin extends PluginAdapter {@Overridepublic boolean validate(List<String> list) {return true;}@Overridepublic boolean modelBaseRecordClassGenerated(TopLevelClass topLevelClass, IntrospectedTable introspectedTable) {//添加domain的importtopLevelClass.addImportedType("lombok.Data");topLevelClass.addImportedType("lombok.Builder");topLevelClass.addImportedType("lombok.NoArgsConstructor");topLevelClass.addImportedType("lombok.AllArgsConstructor");//添加domain的注解topLevelClass.addAnnotation("@Data");topLevelClass.addAnnotation("@Builder");topLevelClass.addAnnotation("@NoArgsConstructor");topLevelClass.addAnnotation("@AllArgsConstructor");//添加domain的注释topLevelClass.addJavaDocLine("/**");topLevelClass.addJavaDocLine("* Created by Mybatis Generator on " + date2Str(new Date()));topLevelClass.addJavaDocLine("*/");return true;}@Overridepublic boolean clientGenerated(Interface interfaze, TopLevelClass topLevelClass, IntrospectedTable introspectedTable) {//Mapper文件的注释interfaze.addJavaDocLine("/**");interfaze.addJavaDocLine("* Created by Mybatis Generator on " + date2Str(new Date()));interfaze.addJavaDocLine("*/");return true;}@Overridepublic boolean modelSetterMethodGenerated(Method method, TopLevelClass topLevelClass, IntrospectedColumn introspectedColumn, IntrospectedTable introspectedTable, ModelClassType modelClassType) {//不生成getterreturn false;}@Overridepublic boolean modelGetterMethodGenerated(Method method, TopLevelClass topLevelClass, IntrospectedColumn introspectedColumn, IntrospectedTable introspectedTable, ModelClassType modelClassType) {//不生成setterreturn false;}private String date2Str(Date date) {SimpleDateFormat sdf = new SimpleDateFormat("yyyy/MM/dd");return sdf.format(date);}
}

首先在本机编译这份java文件, 生成的字节码文件(.class), 先到maven仓库的这个目录

org\mybatis\generator\mybatis-generator-core\1.3.5 (版本无所谓, 根据自己情况修改)
找到这个mybatis-generator-core-1.3.5.jar文件
把字节码塞到 jar包对应的包文件夹下面

mybatis-generator.xml大概如下: 留意标签的位置

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE generatorConfigurationPUBLIC "-//mybatis.org//DTD MyBatis Generator Configuration 1.0//EN""http://mybatis.org/dtd/mybatis-generator-config_1_0.dtd"><generatorConfiguration><context id="postgresql" targetRuntime="MyBatis3"><plugin type="org.mybatis.generator.plugins.LombokPlugin" ><property name="hasLombok" value="true"/></plugin><!--关闭注释 --><commentGenerator><property name="suppressAllComments" value="true"/></commentGenerator><!--数据库连接信息 --><jdbcConnection driverClass="org.postgresql.Driver"connectionURL=""userId="" password=""></jdbcConnection><!--生成的model 包路径 --><javaModelGenerator targetPackage="com.lwz.dao.generator.model"targetProject="src/main/java"><property name="enableSubPackages" value="true"/></javaModelGenerator><!--生成xml mapper文件 路径 --><sqlMapGenerator targetPackage="mapper/generator" targetProject="src/main/resources"><property name="enableSubPackages" value="true"/></sqlMapGenerator><!-- 生成的Dao接口 的包路径 --><javaClientGenerator type="XMLMAPPER" targetPackage="com.lwz.dao.generator.mapper" targetProject="src/main/java"><property name="enableSubPackages" value="true"/></javaClientGenerator><!--对应数据库表名 --><table tableName="example"></table></context>
</generatorConfiguration>
/**
* Created by Mybatis Generator on 2018/06/06
*/
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class Example{

MybatisGenerator+lombok相关推荐

  1. Day14(springboot与mybatis整合、mybatis自动代码生成、swagger、thymeleaf、lombok环境配置、mybatisPlus介绍(自动代码生成))

    srpingboot和mybatis整合 springbootSSM项目下载地址 链接:https://pan.baidu.com/s/11fwh1C7ZOg3jQVlXl2DJjQ 提取码:83yt ...

  2. 三个插件Lombok、MBG和通用mapper文件的使用

    一.Lombok Lombok 是一个简化Java代码的工具 作用:能通过注解的方式,在编译时自动为类生成构造器.get/set.equals.toString.hashcode方法 使用: 1.引入 ...

  3. java if (name!=null name!=),命名不规范,lombok泪两行!

    序言 去年在项目当中引入了Lombok插件,着实解放了双手,代替了一些重复的简单工作(Getter,Setter,toString等方法的编写). 但是,在使用的过程当中,也发现了一些坑,开始的时候并 ...

  4. 【java】Lombok的使用

    介绍:lombok在编译entity文件时自动生成get set toString hashCode等方法,这样方法生成就不用写在代码里了,可以简化代码. 使用方法: 一.在pom文件里引入lombo ...

  5. 40.lombok在IntelliJ IDEA下的使用

    转自:https://www.cnblogs.com/yjmyzz/p/lombok-with-intellij-idea.html lombok是一款可以精减java代码.提升开发人员生产效率的辅助 ...

  6. eclipse集成lombok

    个人资源免费分享网站:http://xiaocaoshare.com/ 进入lombok.jar所在目录,执行java -jar lombok.jar命令 选择要集成的ide 点击Install / ...

  7. elcipse 安装lombok插件解决 @Slf4j 等找不到log变量问题

    1.前往官网下载:https://projectlombok.org/download  lombok.jar  2.将lombok.jar放在eclipse的安装目录下. 3.在eclipse的安装 ...

  8. 代码洁癖的春天!Java 效率工具之 Lombok

    点击上方"搜云库技术团队",选择"设为星标" 回复"1024"或"面试题"获取学习资料 还在编写无聊枯燥又难以维护的PO ...

  9. Lombok!代码简洁神器还是代码“亚健康”元凶?

    以下文章来源方志朋的博客,回复"666"获面试宝典 关于Lombok,DD是一个重度用户,从我编写的Spring Boot教程还是Spring Cloud教程中,都可以看到几乎每个 ...

最新文章

  1. Spring基础专题——第五章(Aop代理)
  2. epoll 或者 kqueue 的原理是什么?
  3. 爱立信和威瑞森电信使用VR流式车来测试5G
  4. leetcode算法题--Unique Binary Search Trees II
  5. javascript精要(1)-script元素
  6. Oracle 创建函数的权限
  7. IOT物联网观察之物联网是器,大数据是魂,人工智能是手段!
  8. View的绘制-layout流程详解
  9. vue兄弟组件之间的传值,bus运用,beforeDestroy销毁,Bus.$off
  10. 【英语学习】【Daily English】U15 Culture L01 You'll be used to life here before long
  11. love2d杂记4--有用的辅助库
  12. 路人实拍Waymo无人车:行为诡异,谨慎到让人怀疑人生
  13. 【目标检测】SPPNet算法详解
  14. 解决Eclipse开发工具Debug调试JDK源码无法查看变量值
  15. paip.win32的internet扩展已停止工作解决大法
  16. flashcp: verification mismatch at 0x0
  17. 算法编程10:岛屿的最大面积
  18. SmartCash会止步于替代葡萄牙及瑞士境内的西联汇款和TransferWise服务吗?
  19. 划词翻译脚本--AutoHotkey
  20. Internet History, Technology and Security (Week⑨)

热门文章

  1. 【Vue2.0】— 插件(十六)
  2. JavaScript学习(九十三)—选择排序和冒泡排序
  3. 力扣 有序数组的平方
  4. 买SUV要不要选四驱,有哪些区别?
  5. 请问孩子厌学的话该怎么办?
  6. 厉精图治的拼音及解释
  7. 你就要清楚的知道,自己日后的“盈利模式”是什么?
  8. Python的模板:HTML代码 + 模板语法
  9. Huawei is developing a new future technology
  10. error LNK2019 无法解析的外部符号 _WinMain@16,该符号在函数 “int __cdecl invoke_main(void)“