IDEA使用mybatis generator自动生成代码
主要就三步:
1、pom 文件中引入jar包并配置 build 属性
<dependencies>
<!-- 自动生产mapper Begin! -->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.34</version>
</dependency>
<!-- 自动生产mapper End! -->
</dependencies>
<build>
<plugins>
<!-- 自动生产mapper Begin! -->
<plugin>
<groupId>org.mybatis.generator</groupId>
<artifactId>mybatis-generator-maven-plugin</artifactId>
<version>1.3.5</version>
<configuration>
<verbose>true</verbose>
<overwrite>true</overwrite>
</configuration>
</plugin>
<!-- 自动生产mapper End! -->
</plugins>
</build>
2、代码中配置 generatorConfig.xml
文件,放入resource根目录下
具体说明可以参考注释.
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE generatorConfiguration
PUBLIC "-//mybatis.org//DTD MyBatis Generator Configuration 1.0//EN"
"http://mybatis.org/dtd/mybatis-generator-config_1_0.dtd">
<generatorConfiguration>
<!-- 配置mysql 驱动jar包路径.用了绝对路径 -->
<classPathEntry location="c:/Users/panghaichen/.m2/repository/mysql/mysql-connector-java/5.1.34/mysql-connector-java-5.1.34.jar" />
<context id="wangyongzhi_mysql_tables" targetRuntime="MyBatis3">
<!-- 防止生成的代码中有很多注释,使用如下配置;想自动生成注释,则使用后面的配置。 -->
<!-- <commentGenerator>
<property name="suppressAllComments" value="true" />
<property name="suppressDate" value="true" />
</commentGenerator>-->
<commentGenerator>
<!-- suppressAllComments设置为false,addRemarkComments设置为true会将数据库中的注释自动添加过来。虽然很多废弃说明,但是可以使用正则替换并删除空行,整体来说还是很方便的,具体使用见后续-->
<property name="suppressAllComments" value="false" />
<property name="suppressDate" value="false" />
<property name="addRemarkComments" value="true" />
</commentGenerator>
<!-- 数据库连接 -->
<jdbcConnection driverClass="com.mysql.jdbc.Driver"
connectionURL="jdbc:mysql://10.248.224.12:21202/dmall_virtual_business?useUnicode=true&characterEncoding=UTF-8"
userId="marketing"
password="3KLPHtdmKAwtA18">
</jdbcConnection>
<javaTypeResolver >
<property name="forceBigDecimals" value="false" />
</javaTypeResolver>
<!-- 数据表对应的model层输出目录:DO实体类 -->
<javaModelGenerator targetPackage="main.java.com.dmall.virtual.dao.auto" targetProject="src">
<property name="enableSubPackages" value="true" />
<property name="trimStrings" value="true" />
</javaModelGenerator>
<!-- sql mapper 映射配置文件输出目录:XML文件 -->
<sqlMapGenerator targetPackage="main.java.com.dmall.virtual.dao.auto" targetProject="src">
<property name="enableSubPackages" value="true" />
</sqlMapGenerator>
<!-- mybatis3中的mapper接口输出目录:DAO接口类 -->
<javaClientGenerator type="XMLMAPPER" targetPackage="main.java.com.dmall.virtual.dao.auto" targetProject="src">
<property name="enableSubPackages" value="true" />
</javaClientGenerator>
<!-- 数据表进行生成操作 schema:相当于库名; tableName:表名; domainObjectName:对应的DO类名-->
<table schema="dmall_virtual_business" tableName="denomination_manage" domainObjectName="DenominationManage"
enableCountByExample="false" enableUpdateByExample="false"
enableDeleteByExample="false" enableSelectByExample="false"
selectByExampleQueryId="false">
</table>
<table schema="dmall_virtual_business" tableName="denomination_manage_log" domainObjectName="DenominationManageLog"
enableCountByExample="false" enableUpdateByExample="false"
enableDeleteByExample="false" enableSelectByExample="false"
selectByExampleQueryId="false">
</table>
</context>
</generatorConfiguration>
3、运行插件生成代码
4、清除自动生成注释中的废弃代码
- 在实体类文件中,用正则替换,将包含废弃说明的行替换为空白;
正则表达式:^.* 大师兄.*$
。将大师兄
替换为需要的字符串即可。 - 删除自动生成的get、set方法;
- 使用
Ctrl
+Alt
+L
自动格式化代码。然后上述步骤中替换生成的空白行会被自动删除。 - 使用
Alt
+Insert
自动生成get、set方法
上述步骤绝对比你为每个字段添加注释要方便(如果字段太多的话)。
5、参考:
- Maven 配置之 MyBatis Generator Maven Plugin (三步学会使用 MyBatis Generator 生成代码)- 四个空格
- MyBatis Generator Core – Introduction to MyBatis Generator
注:官网,及介绍。详细信息可以自行观看。- MyBatis Generator Core – MyBatis Generator XML Configuration File Reference
注:XML文件全部配置属性可参考以上。有一个中文可参考:Mybatis Generator 最完整配置详解 - 简书- Intellij IDEA 中使用 MyBatis-generator 自动生成 MyBatis 代码 - 志哥的成长笔记 - SegmentFault 思否
IDEA使用mybatis generator自动生成代码的更多相关文章
- SpringBoot 添加mybatis generator 自动生成代码插件
自动生成数据层代码,提高开发效率 1.pom添加插件,并指定配置文件路径 <!-- mybatis generator 自动生成代码插件 --> <plugin> <gr ...
- idea中mybatis generator自动生成代码配置 数据库是sqlserver
好长时间没有写博客了,最近公司要用java语言,开始学习java,属于初学者,今天主要记录一下mybatis generator自动生成代码,首先在如下图的目录中新建两个文件,如下图 generato ...
- SpringBoot入门篇--整合mybatis+generator自动生成代码+druid连接池+PageHelper分页插件
原文链接 我们这一篇博客讲的是如何整合Springboot和Mybatis框架,然后使用generator自动生成mapper,pojo等文件.然后再使用阿里巴巴提供的开源连接池druid,这个连接池 ...
- IDEA Maven Mybatis generator 自动生成代码
IDEA Maven Mybatis generator 自动生成代码 一.安装配置maven以及在Idea中配置maven 安装过程步骤可以看上面的博文,里面介绍得很详细. 二.建数据表 DROP ...
- IDEA Maven Mybatis generator 自动生成代码(实例讲解)(转)
IDEA Maven Mybatis generator 自动生成代码(实例讲解) MyBatis Generator • 简称MBG,是一个专门为MyBatis框架使用者定制的代码生成器,可以快速的 ...
- 使用Mybatis Generator自动生成代码
MyBatis Generator(MBG)是MyBatis MyBatis 和iBATIS的代码生成器.它将为所有版本的MyBatis以及版本2.2.0之后的iBATIS版本生成代码.它将内省数据库 ...
- Mybatis generator 自动生成代码(2)
最近准备开始做一个项目,需要开始手动创建sql,于是将Mybatis generator 工具功能强化了下. 首先,这里引入到版本一点的包 <dependency> <groupId ...
- Mybatis generator 自动生成代码
开发项目的时候,表很多,是不可能一点点的自己去写xml ,dao文件的,这里就需要用到代码的自动生成工具了. 第一步:导入jar包,当然,这之前,基本环境,像mybatis,数据库之类的都得搭建好. ...
- mybatis generator自动生成代码时 只生成了insert 而没有其他的
mybatis框架提供了非常好用的逆向工程插件,但是在使用过程中会有很多问题. 我在使用中就遇到了只生成insert和insertSeletive方法,而不生成其他根据primary key查询更新删 ...
随机推荐
- 2014年9月9日 高级命令command的使用(上)
上次说到了菜单 工具条按钮 上下文菜单都已经改为用command的方式去做了,这次稍微详细地说说. 在command的实现拓展点handler上右键,可以看到有enabledWhen,activeWh ...
- 控制warning信息在控制台的显示
在运行代码时,有时出现warning信息, 1.当你后台不需要warning信息的时候,可以直接把warning信息省略掉. 2.如果代码是循环,则会在控制台打印多次warning信息,这会使得war ...
- tap 事件会触发两次问题
因项目中使用 coffeeScript (http://coffee-script.org/),此处记录下用 coffeeScript 语法解决 tap 事件触发两次的问题. 在 id="b ...
- JUC-12.4-execute和sumbit的区别
在Executor接口中只定义了execute方法,而submit方法则是在ExecutorService接口中定义的. execute没有返回值,而submit有返回值. 转自: https://w ...
- MySQL 8.0.3性能大杀器 —— CATS 事务调度新算发
转载自:https://www.sohu.com/a/203933205_487483?sec=wd&spm=smpc.author.fd-d.2.1557386676880JSjtJwV 好 ...
- bzoj2725
* 给出一张图 * 每次删掉一条边后求 the shortest path from S to T * 线段树维护最短路径树 * 具体维护从某点开始偏离最短路而到达 T 的最小距离 * 首先记录下最短 ...
- 【线性代数】7-2:线性变化的矩阵(The Matrix of a Linear Transformation)
title: [线性代数]7-2:线性变化的矩阵(The Matrix of a Linear Transformation) categories: Mathematic Linear Algebr ...
- Luogu5369 [PKUSC2018]最大前缀和
题目链接:洛谷 题目大意:给定一个长为$n$的整数序列,求全排列的最大前缀和(必须包含第一个数)之和. 数据范围:$1\leq n\leq 20,1\leq \sum_{i=1}^n|a_i|\leq ...
- 8月清北学堂培训 Day6
今天是杨思祺老师的讲授~ 图论 双连通分量 在无向图中,如果无论删去哪条边都不能使得 u 和 v 不联通, 则称 u 和 v 边双连通: 在无向图中,如果无论删去哪个点(非 u 和 v)都不能使得 u ...
- Django基础之ModelForm
1. form与model的终极结合 class BookForm(forms.ModelForm): class Meta: model = models.Book fields = "_ ...