文档章节

IDEA使用mybatisgenerator自动生成代码

y
 yejunwei
发布于 2017/06/01 10:54
字数 1133
阅读 23
收藏 0
点赞 0
评论 0

结构目录如下:

pom文件配置:

由于使用了分页插件,所以要先把分页插件用maven 打成jar包,再依赖进去

<!--MG的插件-->
			<plugin>
				<groupId>org.mybatis.generator</groupId>
				<artifactId>mybatis-generator-maven-plugin</artifactId>
				<version>1.3.3</version>
				<configuration>
					<!--指定mg的配置文件的位置,默认情况不是在类加载目录下的,我这里设置在test目录下-->
					<configurationFile>src/test/resources/ProjectMgrGeneConfig.xml</configurationFile>
					<verbose>true</verbose>
					<overwrite>true</overwrite>
				</configuration>
				<dependencies>
					<!-- https://mvnrepository.com/artifact/mysql/mysql-connector-java
            配置这个依赖主要是为了等下在配置MG的时候可以不用配置classPathEntry这样的一个属性,避免
            代码的耦合度太高 -->
					<dependency>
						<groupId>mysql</groupId>
						<artifactId>mysql-connector-java</artifactId>
						<version>${mysql.version}</version>
					</dependency>
					<!--这里引用分页插件,因为这个分页插件是自己写的,所以需要先用maven打成jar包,再在这里配置
					在配置文件中有使用到,所以必须要引入-->
					<dependency>
						<groupId>cn.com.bsfit</groupId>
						<artifactId>generator.plugin</artifactId>
						<version>2.0.0</version>
					</dependency>
				</dependencies>
			</plugin>
<!--MG的插件-->
			<plugin>
				<groupId>org.mybatis.generator</groupId>
				<artifactId>mybatis-generator-maven-plugin</artifactId>
				<version>1.3.3</version>
				<configuration>
					<!--指定mg的配置文件的位置,默认情况不是在类加载目录下的,我这里设置在test目录下-->
					<configurationFile>src/test/resources/ProjectMgrGeneConfig.xml</configurationFile>
					<verbose>true</verbose>
					<overwrite>true</overwrite>
				</configuration>
				<dependencies>
					<!-- https://mvnrepository.com/artifact/mysql/mysql-connector-java
            配置这个依赖主要是为了等下在配置MG的时候可以不用配置classPathEntry这样的一个属性,避免
            代码的耦合度太高 -->
					<dependency>
						<groupId>mysql</groupId>
						<artifactId>mysql-connector-java</artifactId>
						<version>${mysql.version}</version>
					</dependency>
					<!--这里引用分页插件,因为在配置文件中要使用到,必须要引入-->
					<dependency>
						<groupId>cn.com.bsfit</groupId>
						<artifactId>generator.plugin</artifactId>
						<version>2.0.0</version>
					</dependency>
				</dependencies>
			</plugin>

mg的配置文件

<?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>

    <!--<properties resource="/src/test/resources/ProjectMgrGeneConfig.properties" />-->
    <!--<properties resource="/src/test/resources/ProjectMgrGeneConfig.properties" />-->
    <!--<classPathEntry location="C:\\maven\\repository\\mysql\\mysql-connector-java\\5.1.35\\mysql-connector-java-5.1.35.jar" />-->

    <context id="frms-pm" targetRuntime="MyBatis3">
    	<property name="javaFileEncoding" value="UTF-8"/>
        <plugin type="mysql.PaginationPlugin"  />
        <plugin type="org.mybatis.generator.plugins.EqualsHashCodePlugin" />
        <plugin type="org.mybatis.generator.plugins.ToStringPlugin" />
        <plugin type="org.mybatis.generator.plugins.SerializablePlugin" />
        <plugin type="org.mybatis.generator.plugins.CaseInsensitiveLikePlugin" />
        <commentGenerator type="mysql.CommentPlugin">
            <property name="suppressDate" value="true" />
            <!--去除自动生成注释 --> 
            <property name="suppressAllComments" value="false" />
        </commentGenerator>

        <jdbcConnection driverClass="com.mysql.jdbc.Driver"
                        connectionURL="jdbc:mysql://10.100.1.85:3306/frms-mt-mgr2.0" userId="root" password="root">
        </jdbcConnection>
        <javaTypeResolver>
            <property name="forceBigDecimals" value="false" />
        </javaTypeResolver>

        <javaModelGenerator targetProject="C:\Users\Think\Documents\多租户2.0\multi-tenancy\bsfit-mt-center\frms-mt-mgr-base\src\main\java" targetPackage="cn.com.bsfit.frms.portal.base.pojo" >
            <property name="enableSubPackages" value="true" />
            <property name="trimStrings" value="true" />
        </javaModelGenerator>

        <sqlMapGenerator targetProject="C:\Users\Think\Documents\多租户2.0\multi-tenancy\bsfit-mt-center\frms-mt-mgr-base\src\main\resources" targetPackage="mysql.cn.com.bsfit.frms.portal.base.sqlmap" >
            <property name="enableSubPackages" value="true" />
        </sqlMapGenerator>

        <javaClientGenerator type="XMLMAPPER" targetProject="C:\Users\Think\Documents\多租户2.0\multi-tenancy\bsfit-mt-center\frms-mt-mgr-base\src\main\java" targetPackage="cn.com.bsfit.frms.portal.base.mapper">
            <property name="enableSubPackages" value="true" />
        </javaClientGenerator>
        
        <!-- ========================多租户2.0表格======================== -->
<!--          <table schema="frms-mt-mgr2.0" tableName="mt_tenancy" domainObjectName="MTTenancy"> -->
<!--             <property name="constructorBased" value="true" /> -->
<!--             <property name="useActualColumnNames" value="false" /> -->
<!--             <property name="ignoreQualifiersAtRuntime" value="true" /> -->
<!--              <generatedKey column="ID" sqlStatement="MySql" identity="true" type="post"/> -->
<!--         </table> -->
        
<!--         <table schema="frms-mt-mgr2.0" tableName="mt_role" domainObjectName="MTRole"> -->
<!--             <property name="constructorBased" value="true" /> -->
<!--             <property name="useActualColumnNames" value="false" /> -->
<!--             <property name="ignoreQualifiersAtRuntime" value="true" /> -->
<!--              <generatedKey column="ID" sqlStatement="MySql" identity="true" type="post"/> -->
<!--         </table> -->
        
<!--         <table schema="frms-mt-mgr2.0" tableName="mt_user" domainObjectName="MTUser"> -->
<!--             <property name="constructorBased" value="true" /> -->
<!--             <property name="useActualColumnNames" value="false" /> -->
<!--             <property name="ignoreQualifiersAtRuntime" value="true" /> -->
<!--              <generatedKey column="ID" sqlStatement="MySql" identity="true" type="post"/> -->
<!--         </table> -->
        
<!--           <table schema="frms-mt-mgr2.0" tableName="mt_engine" domainObjectName="MTEngine"> -->
<!--             <property name="constructorBased" value="true" /> -->
<!--             <property name="useActualColumnNames" value="false" /> -->
<!--             <property name="ignoreQualifiersAtRuntime" value="true" /> -->
<!--             <generatedKey column="ID" sqlStatement="MySql" identity="true" type="post"/> -->
<!--         </table> -->
        
<!--          <table schema="frms-mt-mgr2.0" tableName="server" domainObjectName="Server"> -->
<!--             <property name="constructorBased" value="true" /> -->
<!--             <property name="useActualColumnNames" value="false" /> -->
<!--             <property name="ignoreQualifiersAtRuntime" value="true" /> -->
<!--             <generatedKey column="ID" sqlStatement="MySql" identity="true" type="post"/> -->
<!--         </table> -->
        
<!--       <table schema="frms-mt-mgr2.0" tableName="logs" domainObjectName="Logs"> -->
<!--             <property name="constructorBased" value="true" /> -->
<!--             <property name="useActualColumnNames" value="false" /> -->
<!--             <property name="ignoreQualifiersAtRuntime" value="true" /> -->
<!--              <generatedKey column="ID" sqlStatement="MySql" identity="true" type="post"/> -->
<!--         </table> -->
<!--         ========================多租户2.0表格========================      -->
 		<!-- ========================多租户2.1新增表格======================== --> 
<!-- 		 <table schema="frms-mt-mgr2.0" tableName="engine_version" domainObjectName="EngineVersion"> -->
<!--             <property name="constructorBased" value="true" /> -->
<!--             <property name="useActualColumnNames" value="false" /> -->
<!--             <property name="ignoreQualifiersAtRuntime" value="true" /> -->
<!--             <generatedKey column="ID" sqlStatement="MySql" identity="true" type="post"/> -->
<!--         </table> -->
        
<!--          <table schema="frms-mt-mgr2.0" tableName="engine_version_log" domainObjectName="EngineVersionLog"> -->
<!--             <property name="constructorBased" value="true" /> -->
<!--             <property name="useActualColumnNames" value="false" /> -->
<!--             <property name="ignoreQualifiersAtRuntime" value="true" /> -->
<!--             <generatedKey column="ID" sqlStatement="MySql" identity="true" type="post"/> -->
<!--         </table> -->
        
         <!--<table schema="frms-mt-mgr2.0" tableName="engine_config" domainObjectName="EngineConfig">-->
             <!--<property name="constructorBased" value="true" />-->
             <!--<property name="useActualColumnNames" value="false" />-->
             <!--<property name="ignoreQualifiersAtRuntime" value="true" />-->
             <!--<generatedKey column="ID" sqlStatement="MySql" identity="true" type="post"/>-->
         <!--</table>-->
        
<!--        <table schema="frms-mt-mgr2.0" tableName="probe" domainObjectName="Probe"> -->
<!--             <property name="constructorBased" value="true" /> -->
<!--             <property name="useActualColumnNames" value="false" /> -->
<!--             <property name="ignoreQualifiersAtRuntime" value="true" /> -->
<!--              <generatedKey column="ID" sqlStatement="MySql" identity="true" type="post"/> -->
<!--         </table> -->
        
        <!--<table schema="frms-mt-mgr2.0" tableName="streamcube" domainObjectName="Streamcube">-->
            <!--<property name="useActualColumnNames" value="false" />-->
            <!--<property name="ignoreQualifiersAtRuntime" value="true" />-->
            <!--<generatedKey column="ID" sqlStatement="MySql" identity="true" type="post"/>-->
        <!--</table>-->
        
        <table schema="frms-mt-mgr2.0" tableName="streamcube_config" domainObjectName="StreamcubeConfig">
             <property name="constructorBased" value="true" />
             <property name="useActualColumnNames" value="false" />
             <property name="ignoreQualifiersAtRuntime" value="true" />
              <generatedKey column="ID" sqlStatement="MySql" identity="true" type="post"/>
         </table>
        
<!--           <table schema="frms-mt-mgr2.0" tableName="tenancy_streamcube" domainObjectName="TenancyStreamcube"> -->
<!--             <property name="constructorBased" value="true" /> -->
<!--             <property name="useActualColumnNames" value="false" /> -->
<!--             <property name="ignoreQualifiersAtRuntime" value="true" />  -->
<!--              <generatedKey column="ID" sqlStatement="MySql" identity="true" type="post"/> -->
<!--         </table> -->
        
<!--         <table schema="frms-mt-mgr2.0" tableName="streamcube_group" domainObjectName="StreamcubeGroup"> -->
<!--             <property name="constructorBased" value="true" /> -->
<!--             <property name="useActualColumnNames" value="false" /> -->
<!--             <property name="ignoreQualifiersAtRuntime" value="true" /> -->
<!--              <generatedKey column="ID" sqlStatement="MySql" identity="true" type="post"/> -->
<!--         </table> -->
   
<!--    		<table schema="frms-mt-mgr2.0" tableName="mt_api_count" domainObjectName="MTApiCount"> -->
<!--             <property name="constructorBased" value="true" /> -->
<!--             <property name="useActualColumnNames" value="false" /> -->
<!--             <property name="ignoreQualifiersAtRuntime" value="true" /> -->
<!--         </table>  -->
        
<!--         <table schema="frms-mt-mgr2.0" tableName="tenant_auth_info" domainObjectName="TenantAuthInfo"> -->
<!--             <property name="constructorBased" value="true" /> -->
<!--             <property name="useActualColumnNames" value="false" /> -->
<!--             <property name="ignoreQualifiersAtRuntime" value="true" /> -->
<!--              <generatedKey column="ID" sqlStatement="MySql" identity="true" type="post"/> -->
<!--         </table>  -->
		<!-- ========================多租户2.1新增表格======================== -->
    </context>
</generatorConfiguration>

 

© 著作权归作者所有

共有 人打赏支持
y
粉丝 0
博文 41
码字总数 8793
作品 0
杭州
【MyBatis】学习纪要十一:逆向工程

写在前面的话 前面学习MyBatis的运行原理,刚学完,回头想想还是非常复杂的,也因为之前没有这样去分析过源码,所以这一节算是卡住了,可能会花一定的时间,为了不卡住学习进度,所以我们继续...

Wenyi_Feng ⋅ 05/10 ⋅ 0

IntelliJ IDEA 2018.1新特性

工欲善其事必先利其器,如果有一款IDE可以让你更高效地专注于开发以及源码阅读,为什么不试一试? 本文转载自:netty技术内幕 3月27日,jetbrains正式发布期待已久的IntelliJ IDEA 2018.1,再...

Romane ⋅ 06/23 ⋅ 0

IntelliJ IDEA2016.3.3 常用设置

本篇内容为大家提供的是IntelliJ IDEA2016.3.3 常用设置配置。感兴趣的同学可以参考学习下,具体内容如下: 1常用设置 1.1代码提示 IntelliJ IDEA 的代码提示和补充功能有一个特性:区分大小...

paascloud ⋅ 2017/02/05 ⋅ 0

没想到吧!Intellij IDEA 神器还有这些小技巧

作者:Sam哥哥聊技术 来自:开源中国社区 概述 Intellij IDEA真是越用越觉得它强大,它总是在我们写代码的时候,不时给我们来个小惊喜。出于对Intellij IDEA的喜爱,我决定写一个与其相关的专...

开源中国 ⋅ 05/15 ⋅ 0

Intellij IDEA神器常用技巧一快捷键

概述 真是越用越觉得它强大,它总是在我们写代码的时候,不时给我们来个小惊喜。出于对的喜爱,我决定写一个与其相关的专栏或者系列,把一些好用的技巧分享给大家。本文是这个系列的第一篇,...

Mkeeper ⋅ 06/17 ⋅ 0

Android Studio项目 R 找不到或者飘红解决方案

在接触一些新项目的时候,经常会遇到R文件找不到的问题,导致代码里面到处飘红,影响阅读,那么怎么处理这种问题呢? 应该按照飘红的原因来分别处理: 代码Clean之后,还没有Build 这个时候,...

姜康 ⋅ 05/11 ⋅ 0

IntelliJ IDEA 2018.2 EAP 发布,支持 Touch Bar

IntelliJ IDEA 2018.2 EAP 已发布:包含对 MacBook Touch Bar 的支持,对 Gradle 支持的改进,新图标,Spring Boot 及一些更新。 支持 Touch Bar 即将推出的 IntelliJ IDEA 2018.2 引入了 To...

达尔文 ⋅ 05/18 ⋅ 0

IDEA使用sonarLint

一、IDEA如何安装SonarLint插件 1.打开 Idea 2.点击【File】 3.点击【Settings】 4.点击【Plugins】 5.在搜索栏中输入“sonarlint”关键字 6.点击【Install】进行安装 7.重启Idea 二、IDEA如...

开源中国成都区源花 ⋅ 06/19 ⋅ 0

Intellij IDEA神器常用技巧三-常用设置推荐

常用设置,简单几个设置让你的酷炫好用。首先进入设置页面快捷键 1 主题设置Darcula 推荐酷黑主题 2 字体设置 推荐字体,官网下载,宽字体,高识别度 下载完成,双击安装 设置编程字体,字体...

Mkeeper ⋅ 06/19 ⋅ 0

idea 中设置规范的代码格式

idea 中设置规范的代码格式 优雅的编码格式是一个程序员的必备素质。 最近切换到了 idea,想对自己的代码进行格式化的时候希望能自动排版成公司规定的格式,可以做以下设置: 打开 idea 的 ...

writeademo ⋅ 05/21 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

tcp/ip详解-链路层

简介 设计链路层的目的: 为IP模块发送和接收IP数据报 为ARP模块发送ARP请求和接收ARP应答 为RARP模块发送RARP请求和接收RARP应答 TCP/IP支持多种链路层协议,如以太网、令牌环往、FDDI、RS-...

loda0128 ⋅ 36分钟前 ⋅ 0

spring.net aop代码例子

https://www.cnblogs.com/haogj/archive/2011/10/12/2207916.html

whoisliang ⋅ 52分钟前 ⋅ 0

发送短信如何限制1小时内最多发送11条短信

发送短信如何限制1小时内最多发送11条短信 场景: 发送短信属于付费业务,有时为了防止短信攻击,需要限制发送短信的频率,例如在1个小时之内最多发送11条短信. 如何实现呢? 思路有两个 截至到当...

黄威 ⋅ 昨天 ⋅ 0

mysql5.7系列修改root默认密码

操作系统为centos7 64 1、修改 /etc/my.cnf,在 [mysqld] 小节下添加一行:skip-grant-tables=1 这一行配置让 mysqld 启动时不对密码进行验证 2、重启 mysqld 服务:systemctl restart mysql...

sskill ⋅ 昨天 ⋅ 0

Intellij IDEA神器常用技巧六-Debug详解

在调试代码的时候,你的项目得debug模式启动,也就是点那个绿色的甲虫启动服务器,然后,就可以在代码里面断点调试啦。下面不要在意,这个快捷键具体是啥,因为,这个keymap是可以自己配置的...

Mkeeper ⋅ 昨天 ⋅ 0

zip压缩工具、tar打包、打包并压缩

zip 支持压缩目录 1.在/tmp/目录下创建目录(study_zip)及文件 root@yolks1 study_zip]# !treetree 11└── 2 └── 3 └── test_zip.txt2 directories, 1 file 2.yum...

蛋黄Yolks ⋅ 昨天 ⋅ 0

聊聊HystrixThreadPool

序 本文主要研究一下HystrixThreadPool HystrixThreadPool hystrix-core-1.5.12-sources.jar!/com/netflix/hystrix/HystrixThreadPool.java /** * ThreadPool used to executed {@link Hys......

go4it ⋅ 昨天 ⋅ 0

容器之上传镜像到Docker hub

Docker hub在国内可以访问,首先要创建一个账号,这个后面会用到,我是用126邮箱注册的。 1. docker login List-1 Username不能使用你注册的邮箱,要用使用注册时用的username;要输入密码 ...

汉斯-冯-拉特 ⋅ 昨天 ⋅ 0

SpringBoot简单使用ehcache

1,SpringBoot版本 2.0.3.RELEASE ①,pom.xml <parent><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-parent</artifactId><version>2.0.3.RELE......

暗中观察 ⋅ 昨天 ⋅ 0

Spring源码解析(八)——实例创建(下)

前言 来到实例创建的最后一节,前面已经将一个实例通过不同方式(工厂方法、构造器注入、默认构造器)给创建出来了,下面我们要对创建出来的实例进行一些“加工”处理。 源码解读 回顾下之前...

MarvelCode ⋅ 昨天 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部