Mybatis-generator使用和扩展
Mybatis-generator使用和扩展
mybatis-generator使用
pom.xml配置
<plugin>
                <groupId>org.mybatis.generator</groupId>
                <artifactId>mybatis-generator-maven-plugin</artifactId>
                <version>1.3.2</version>
                <dependencies>
                    <!-- 数据库驱动  -->
                    <dependency>
                        <groupId>mysql</groupId>
                        <artifactId>mysql-connector-java</artifactId>
                        <version>5.1.6</version>
                    </dependency>
                    <dependency>
                        <groupId>org.mybatis.generator</groupId>
                        <artifactId>mybatis-generator-core</artifactId>
                        <version>1.3.2</version>
                    </dependency>
                    <dependency>
                        <groupId>org.mybatis</groupId>
                        <artifactId>mybatis</artifactId>
                        <version>3.2.8</version>
                    </dependency>
                        </exclusions>
                    </dependency>
                </dependencies>
                <configuration>
                    <verbose>true</verbose>
                    <overwrite>true</overwrite>
                </configuration>
            </plugin>
generatorConfig配置
<?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">
<!-- add by luobo 2016.4.18 使用时请自行修改 -->
<generatorConfiguration>
    <!-- 引入配置文件 -->
    <properties resource="mybatis.generator.properties"/>
    <!-- 一个数据库一个context -->
    <context id="mysqlTables" targetRuntime="MyBatis3">
        <!-- 自定义扩展插件 -->
        <plugin type="com.yt.trade.dal.util.SqlMapperGeneratorExtend" >
            <property name="enableInsertSelective" value="false" />
        </plugin>
        <!-- 注释,type是使用自定义的类生成注释,这里我主要是想把数据库的字段说明带出来 -->
        <commentGenerator type="com.yt.trade.dal.util.YtCommentGenerator">
            <!-- 是否取消注释 -->
            <property name="suppressAllComments" value="true"/>
            <!-- 是否生成注释代时间戳-->
            <property name="suppressDate" value="true" />
        </commentGenerator>
        <!-- jdbc连接 -->
        <jdbcConnection driverClass="${jdbc_driver}"
                        connectionURL="${jdbc_url}"
                        userId="${jdbc_user}"
                        password="${jdbc_password}" />
        <!-- 类型转换 -->
        <javaTypeResolver>
            <!-- 是否使用bigDecimal, false可自动转化以下类型(Long, Integer, Short, etc.) -->
            <property name="forceBigDecimals" value="false"/>
        </javaTypeResolver>
        <!-- 生成实体类地址 -->
        <javaModelGenerator targetPackage="com.yt.trade.dal.order.mapper.test" targetProject="src/main/java">
            <!-- 是否在当前路径下新加一层schema,eg:fase路径com.oop.eksp.user.model, true:com.oop.eksp.user.model.[schemaName] -->
            <property name="enableSubPackages" value="false"/>
            <!-- 是否针对string类型的字段在set的时候进行trim调用 -->
            <property name="trimStrings" value="true"/>
        </javaModelGenerator>
        <!-- 生成mapxml文件 -->
        <sqlMapGenerator targetPackage="mapper.test" targetProject="src/main/resources">
            <property name="enableSubPackages" value="false"/>
        </sqlMapGenerator>
        <!-- 生成mapxml对应client,也就是接口dao -->
        <javaClientGenerator type="XMLMAPPER" targetPackage="com.yt.trade.dal.order.mapper" targetProject="src/main/java">
            <property name="enableSubPackages" value="false"/>
        </javaClientGenerator>
        <!-- 配置表信息 -->
        <!-- schema即为数据库名 tableName为对应的数据库表 domainObjectName是要生成的实体类 enable*ByExample 是否生成 example类   -->
        <table  tableName="t_order_assist"  domainObjectName="OrderAssist" enableUpdateByPrimaryKey="true" enableSelectByPrimaryKey="true"
                enableInsert="true" enableCountByExample="false" enableSelectByExample="false" enableDeleteByPrimaryKey="false" enableUpdateByExample="false"  enableDeleteByExample="false" >
            <generatedKey column="id" sqlStatement="SELECT LAST_INSERT_ID()"/>
            <!-- 忽略列,不生成bean 字段 -->
            <ignoreColumn column="FRED" />
            <!-- 指定列的java数据类型 -->
            <columnOverride column="LONG_VARCHAR_FIELD" jdbcType="VARCHAR" />
        </table>
        <!--
        <table  tableName="xxxx" domainObjectName="XXXX" enableCountByExample="false" enableSelectByExample="false" enableUpdateByExample="false" enableDeleteByExample="false">
            <generatedKey column="id" sqlStatement="SELECT LAST_INSERT_ID()"/>
        </table>
        -->
    </context>
</generatorConfiguration>
												
											Mybatis-generator使用和扩展的更多相关文章
- MyBatis Generator实现MySQL分页插件
		
MyBatis Generator是一个非常方便的代码生成工具,它能够根据表结构生成CRUD代码,可以满足大部分需求.但是唯一让人不爽的是,生成的代码中的数据库查询没有分页功能.本文介绍如何让MyBa ...
 - 记一次 IDEA mybatis.generator  自定义扩展插件
		
在使用 idea mybatis.generator 生成的代码,遇到 生成的代码很多重复的地方, 虽然代码是生成的,我们也不应该允许重复的代码出现,因为这些代码后期都要来手动维护. 对于生成时间戳注 ...
 - Mybatis Generator 扩展
		
目标 修改Model的名称 修改Dao的名称 配置文件 context.targetRuntime 替换为自定义的类型 原理在:org.mybatis.generator.internal.Objec ...
 - Mybatis Generator生成工具配置文件详解
		
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE generatorConfiguration ...
 - MyBatis Generator 详解
		
MyBatis Generator中文文档 MyBatis Generator中文文档地址:http://mbg.cndocs.tk/ 该中文文档由于尽可能和原文内容一致,所以有些地方如果不熟悉,看中 ...
 - MyBatis Generator 详解 【转来纯为备忘】
		
版权声明:版权归博主所有,转载请带上本文链接!联系方式:abel533@gmail.com 目录(?)[+] MyBatis Generator中文文档 运行MyBatis Generator X ...
 - mybatis generator使用总结
		
一.mybatis项目的体系结构 百度mybaits,可以进入mybatis的github:https://github.com/mybatis. mybatis是一个大大的体系,它不是孤立的,它可以 ...
 - mybatis  Generator配置文件详解
		
这里按照配置的顺序对配置逐个讲解,更细的内容可以配合中文文档参照. 1. 配置文件头 <?xml version="1.0" encoding="UTF-8&quo ...
 - mybatis generator配置文件
		
<!DOCTYPE generatorConfiguration PUBLIC "-//mybatis.org//DTD MyBatis Generator Configuration ...
 - 【转】Mybatis Generator最完整配置详解
		
本文转简书:http://www.jianshu.com/p/e09d2370b796 --> --> <!-- 自动识别数据库关键字,默认false,如果设置为true,根据Sql ...
 
随机推荐
- 2014年Tizen开发者峰会上海征稿启事!
			
本次征稿面向大中华用户: “Tizen开发者,应用程序开发人员.isv平台设计师.运营商.厂商.硬件厂商.软件厂商,开源爱好者,和从事Tizen的工作人员” 2014年Tizen开发者峰会 这一次,亚 ...
 - lua 中pairs 和 ipairs区别
			
lua 中pairs 和 ipairs区别 标准库提供了集中迭代器,包括迭代文件每行的(io.lines),迭代table元素的(pairs),迭代数组元素的(ipairs),迭代字符串中单词的 (s ...
 - Android--应用开发1(应用程序框架)
			
应用程序的框架,就是所有开发者共同是有和遵循的约定,大家在约定上进行必要的扩展,但程序的主体结构是一致的. Android系统提供给开发者一个框架,我们所有的应用开发就是在这个框架上进行扩展,下来看看 ...
 - Storm系列(十四)架构分析之Executor-输入和输出处理
			
Executor的数据 mk-executor-data函数用于定义Executor中含有的数据. Executor的输入处理 根据executor-id从Worker的:executor-recei ...
 - 安装 Linux 与 Windows 10 双系统,你需要了解的一切
			
该选Windows 10还是Linux Mint?鱼与熊掌当然可以兼得,但咱们得掌握点小技巧才能顺利搞定. Windows 10绝不是唯一一款值得我们安装在自己计算机之上的免费操作系统.Linux只靠 ...
 - Spring源码入门——DefaultBeanNameGenerator解析
			
我们知道在spring中每个bean都要有一个id或者name标示每个唯一的bean,在xml中定义一个bean可以指定其id和name值,但那些没有指定的,或者注解的spring的beanname怎 ...
 - [SCOI2005]互不侵犯King
			
题目描述 在N×N的棋盘里面放K个国王,使他们互不攻击,共有多少种摆放方案.国王能攻击到它上下左右,以及左上左下右上右下八个方向上附近的各一个格子,共8个格子. ——by洛谷 https://www. ...
 - 服务框架HSF分析之一容器启动
			
大家平时都在用这个服务框架.简单阅读了下代码,了解其原理可以方便解决一些常见hsf的问题.限于篇幅,整个分析将分几个系列发布.第一篇将简单介绍Hsf的启动和各组件之间关系. 一. Hsf总体架构 这 ...
 - editplus如何设置不自动备份
			
依次选择:工具,参数设置,文件(默认展开的,要缩回),然后看右边“保存文件时创建备份”,前面的框不要打勾,应用,确定
 - Java中各种排序算法
			
package org.rut.util.algorithm.support; import org.rut.util.algorithm.SortUtil; /** * @author treero ...