MyBatis generator 生成生成dao model mappper
MyBatis GeneratorXML配置文件参考
在最常见的用例中,MyBatis Generator(MBG)由XML配置文件驱动。 配置文件告诉MBG:
- 如何连接到数据库
- 什么对象要生成,以及如何生成它们
- 什么表应用于生成对象
以下是一个示例MBG配置文件。 有关元素和属性值的更多信息,请参阅每个元素的各个页面。
<?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>
<classPathEntry location="/Program Files/IBM/SQLLIB/java/db2java.zip" />
<context id="DB2Tables" targetRuntime="MyBatis3">
<jdbcConnection driverClass="COM.ibm.db2.jdbc.app.DB2Driver"
connectionURL="jdbc:db2:TEST"
userId="db2admin"
password="db2admin">
</jdbcConnection>
<javaTypeResolver >
<property name="forceBigDecimals" value="false" />
</javaTypeResolver>
<javaModelGenerator targetPackage="test.model" targetProject="\MBGTestProject\src">
<property name="enableSubPackages" value="true" />
<property name="trimStrings" value="true" />
</javaModelGenerator>
<sqlMapGenerator targetPackage="test.xml" targetProject="\MBGTestProject\src">
<property name="enableSubPackages" value="true" />
</sqlMapGenerator>
<javaClientGenerator type="XMLMAPPER" targetPackage="test.dao" targetProject="\MBGTestProject\src">
<property name="enableSubPackages" value="true" />
</javaClientGenerator>
<table schema="DB2ADMIN" tableName="ALLTYPES" domainObjectName="Customer" >
<property name="useActualColumnNames" value="true"/>
<generatedKey column="ID" sqlStatement="DB2" identity="true" />
<columnOverride column="DATE_FIELD" property="startDate" />
<ignoreColumn column="FRED" />
<columnOverride column="LONG_VARCHAR_FIELD" jdbcType="VARCHAR" />
</table>
</context>
</generatorConfiguration>
关于此文件的重要注意事项如下:
- 该文件指定将使用旧版DB2 CLI驱动程序连接到数据库,并指定可以在哪里找到驱动程序。
- Java Type Resolver不应强制使用BigDecimal字段 - 这意味着如果可能,整数类型(Short,Integer,Long等)将被替换。 此功能是使数据库DECIMAL和NUMERIC列更容易处理。
- Java模型生成器应该使用子包。 这意味着在这种情况下,生成的模型对象将被放置在名为test.model.db2admin的包中(因为该表位于DB2ADMIN模式中)。 如果enableSubPackages属性设置为false,那么该包将是test.model。 Java模型生成器也应该修剪字符串。 这意味着任何String属性的setter将调用trim函数 - 如果数据库可能在字符列末尾返回空白字符,这很有用。
- SQL Map生成器应该使用子包。 这意味着在这种情况下,生成的XML文件将被放置在名为test.xml.db2admin的包中(因为表位于DB2ADMIN模式中)。 如果enableSubPackages属性设置为false,那么该包将是test.xml。
- DAO生成器应该使用子包。 这意味着在这种情况下,生成的DAO类将被放置在名为test.dao.db2admin的包中(因为表位于DB2ADMIN模式中)。 如果enableSubPackages属性设置为false,那么该包将是test.dao。 DAO生成器应生成引用MyBatis的XML配置的映射器接口。
- 该文件指定只有一个表将被内省,但更多可以指定。 关于指定表的重要注意事项包括:
- 生成的对象将基于Customer(CustomerKey,Customer,CustomerMapper等) - 而不是表名。
- 实际列名称将用作属性。 如果此属性设置为false(或未指定),则MBG将尝试将列名称加载。 在这两种情况下,名称可以被元素覆盖
- 该列具有生成的密钥,它是一个标识列,数据库类型是DB2。 这将导致MBG在生成的语句中生成正确的元素,以便可以返回新生成的密钥(使用DB2特定的SQL)。
- 列DATE_FIELD将映射到一个名为startDate的属性。 这将覆盖在这种情况下为DATE_FIELD的默认属性,如果useActualColumnNames属性设置为false,则为dateField。
- FRED列将被忽略。 没有SQL将列出该字段,并且不会生成Java属性。
- 列LONG_VARCHAR_FIELD将被视为VARCHAR字段,而不考虑实际的数据类型。
MyBatis generator 生成生成dao model mappper的更多相关文章
- 使用Mybatis Generator自动生成Mybatis相关代码
本文将简要介绍怎样利用Mybatis Generator自动生成Mybatis的相关代码: 一.构建一个环境: 1. 首先创建一个表: CREATE TABLE pet (name VARCHAR(2 ...
- SpringBoot 添加mybatis generator 自动生成代码插件
自动生成数据层代码,提高开发效率 1.pom添加插件,并指定配置文件路径 <!-- mybatis generator 自动生成代码插件 --> <plugin> <gr ...
- MyBatis Generator 自定义生成注释
注释生成器 为了生成db里面的注释,必须自定义注释生成器 EmptyCommentGenerator: import org.mybatis.generator.api.CommentGenerato ...
- IDEA Maven Mybatis generator 自动生成代码
IDEA Maven Mybatis generator 自动生成代码 一.安装配置maven以及在Idea中配置maven 安装过程步骤可以看上面的博文,里面介绍得很详细. 二.建数据表 DROP ...
- idea中mybatis generator自动生成代码配置 数据库是sqlserver
好长时间没有写博客了,最近公司要用java语言,开始学习java,属于初学者,今天主要记录一下mybatis generator自动生成代码,首先在如下图的目录中新建两个文件,如下图 generato ...
- SpringBoot入门篇--整合mybatis+generator自动生成代码+druid连接池+PageHelper分页插件
原文链接 我们这一篇博客讲的是如何整合Springboot和Mybatis框架,然后使用generator自动生成mapper,pojo等文件.然后再使用阿里巴巴提供的开源连接池druid,这个连接池 ...
- Mybatis generator 逆向生成代码
Mybatis generator 逆向生成代码 简单介绍 本文介绍用mybatis逆向生成javaben dao接口 1.创建maven项目 创建相应的包 附上项目创建完成的图片 然后在pom.xm ...
- IDEA Maven Mybatis generator 自动生成代码(实例讲解)(转)
IDEA Maven Mybatis generator 自动生成代码(实例讲解) MyBatis Generator • 简称MBG,是一个专门为MyBatis框架使用者定制的代码生成器,可以快速的 ...
- mybatis generator 自动生成dao层映射代码
资源: doc url :http://www.mybatis.org/generator/ download:https://github.com/mybatis/generator/release ...
随机推荐
- 《MVC +EasyUI 》——表单的提交
之前用AJax给Controller传递參数,然后再调用服务端的方法对数据库进行更改,今天碰到一个新的方法,就是表单的提交.这样能够省去AJax穿參.当表单提交后.我们能够获取表单上控件中的值 ...
- 点滴积累【JS】---JS小功能(checkbox实现全选和全取消)
效果: 代码: <head runat="server"> <title></title> <script type="text ...
- spring的容器(控制反转、依赖注入)
一.spring的容器 ”容器“是spring的一个重要概念,其主要作用是完成创建成员变量,并完成装配. 而容器的特点”控制反转“和”依赖注入“是两个相辅相成的概念. 控制反转:我们在使用一个类型的实 ...
- Unity中的特殊文件夹
看了雨松MOMO的 Unity3D研究院之手游开发中所有特殊的文件夹学习了,做个笔记. 1.Editor Editor文件夹可以在根目录下,也可以在子目录里,只要名子叫Editor即可.不过我比较喜欢 ...
- Pyspider学习
简介 国人编写的强大的网络爬虫系统并自带强大的WebUI,采用Python语言编写吗,分布式架构.支持多种数据库后端 pyspider中文网站:http://www.pyspider.cn/ 源码网址 ...
- hdu6078 Wavel Sequence dp+二维树状数组
//#pragma comment(linker, "/STACK:102400000,102400000") /** 题目:hdu6078 Wavel Sequence 链接:h ...
- impala+kudu
[impala建表]kudu的表必须有主键,作为分区的字段需排在其他字段前面. [range分区](不推荐)CREATE TABLE KUDU_WATER_HISTORY ( id STRING, y ...
- java语言中public、private、protected三个关键字的用法,重写和重载的区别。
java语言中public.private.protected三个关键字的用法,重写和重载的区别. 解答: 作用域 当前类 同包 子类 其它 public √ √ √ √ protected √ √ ...
- 组件(Conponent)是图形用户界面最基本的部分
组件(Conponent)是图形用户界面最基本的部分,也称为构件 ,是可以以图形化的方式显示在屏幕上,并能与用户进行交互的对象,例如一个按钮,一个标签等. 组件不能独立地显示出来,必须将其放在一定的容 ...
- 解决使用VS2013创建的MVC项目在VS2015中打开的各种问题
其实很多问题一直都存在,但是因为其不影响编译结果和运行结果,所以我也就一直没理它.但是问题放在那一直存在,偶尔想起来还有某些问题没解决的时候心里总是感觉不得劲,所以今天就彻底的查查资料解决了. 问题一 ...