MyBatis Generator 笔记
XML 配置参考
<context>
元素
必需的属性
该上下文的唯一标识符。该值将会在一些错误信息中使用到。
可选的属性
如果 targer runtime 是 MyBatis3Simple, MyBatis3DynamicSql, 或者 MyBatis3Kotlin,该属性会被忽略。
该属性用于生成代码的运行时目标。
MyBatisDynamicSql
支持的属性
beginningDelimiter
endingDelimiter
<javaClientGenerator>
元素
<javaClientGenerator>
元素用于定义 Java 客户端生成器的属性。
必需的属性
该属性用来选择预定义的 Java 客户端生成器之一,或者指定一个用户提供的 Java 客户端生成器。
XMLMAPPER
生成的对象是 MyBatis 3.x mapper 基础设施的 Java 接口。接口将依赖于生成的 XML mapper 文件。
这是生成的接口和实现类所在的包。
这用于为生成的接口和类指定目标项目。
<javaModelGenerator>
元素
<javaModelGenerator>
元素用于定义 Java 模型生成器的属性。Java 模型生成器构建主键类,记录类,以及与自省表匹配的按照 Example 类查询。该元素是 <context>
元素必须的子元素。
必需的属性
这是生成的类将被放置的包。在默认的生成器中,属性 “enableSubPackages” 控制如何计算实际的包。如果为 true,则计算出的包是 targetPackage 加上表的 catalog 和 schema 的子包(如果存在)。
这用于为生成的对象指定目标项目。在 Eclipse 环境中运行时,这将会指定保存对象的项目和源文件夹。在其他环境中,该值应该是本地文件系统上的已经存在的目录。如果此目录不存在, MyBatis Generator 将不会创建此目录。
使用方式
创建配置文件,比如在 resources/mybatis-generator/ 下面创建 generatorConfig.xml 配置文件:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62
| <?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="mybatis-generator/generator.properties"/>
<context id="DB2Tables" targetRuntime="MyBatis3Simple">
<property name="beginningDelimiter" value="`"/> <property name="endingDelimiter" value="`"/>
<commentGenerator> <property name="suppressDate" value="true"/> <property name="suppressAllComments" value="true"/> <property name="addRemarkComments" value="true"/> </commentGenerator>
<jdbcConnection driverClass="com.mysql.jdbc.Driver" connectionURL="jdbc:mysql://localhost:3306/xxx?characterEncoding=utf8&serverTimezone=UTC" userId="xxx" password="xxx"> <property name="useInformationSchema" value="true"/> </jdbcConnection>
<javaTypeResolver> <property name="forceBigDecimals" value="false"/> </javaTypeResolver>
<javaModelGenerator targetPackage="xxx" targetProject="src/main/java"> <property name="enableSubPackages" value="true"/> <property name="trimStrings" value="true"/> </javaModelGenerator>
<sqlMapGenerator targetPackage="mapper" targetProject="src/main/resources"> <property name="enableSubPackages" value="true"/> </sqlMapGenerator>
<javaClientGenerator type="XMLMAPPER" targetPackage="xxx" targetProject="src/main/java"> <property name="enableSubPackages" value="true"/> </javaClientGenerator>
<table tableName="book" domainObjectName="Book" enableCountByExample="false" enableUpdateByExample="false" enableDeleteByExample="false" enableSelectByExample="false" selectByExampleQueryId="false"/> </context> </generatorConfiguration>
|
配置界定符
1 2
| <property name="beginningDelimiter" value="`"></property > <property name="endingDelimiter" value="`"></property >
|
在 table 节点添加属性 delimitAllColumns="true"