若是是在多模块开发下,该文件逆向工程要生成的那个模块下的pom文件。java
<build> <plugins> <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> <dependencies> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>5.1.45</version> </dependency> </dependencies> </plugin> </plugins> </build>
若是是在多模块开发下,该文件逆向工程要生成的那个模块下的根目录下(src\main\resourse)。mysql
下面是官方文档提供的参考文件:sql
具体配置见 4.[配置文件详解]数据库
<?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>
<classPathEntry>
mybatis
在pom文件中加入app
<dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>5.1.45</version> </dependency>
dom
依赖后可省略;maven
<context>
ide
id:逆向工程的惟一标识,此值能够被应用到一些错误信息;ui
targetRuntime:此属性用于指定生成的代码的运行时目标。常见值为Mybatis3,Mybatis3Simple等。
<jdbcConnection>
数据库链接信息,可参考数据库的配置文件db.properties。
<javaTypeResolver>
(非必须)
该标签是用来定义java类型解析器的属性,java类型解析器是用于转换从数据库列名的类型对应的java类型。
<javaModelGenerator>
该标签决定逆向工程生成实体的位置。
targetPackage决定生成在哪一个包下,默认存放在src目录下;(com.test.entity)
targetProject决定生成到的目标工程;(.\src\main\java)
enableSubPackages:是否放schema做为包的后缀;(false)
trimString:从数据库返回的值是否删除先后的空格;
<sqlMapGenerator>
生成XxxMapper.xml文件的位置,相似<javaModelGenerator>
targetPackage决定生成在哪一个包下;(mappers)
targetProject决定生成到的目标工程;(.\src\main\resourse)
enableSubPackages:是否放schema做为包的后缀;(false)
<javaClientGenerator>
生成XxxMapper接口文件的位置,相似<javaModelGenerator>
targetPackage决定生成在哪一个包下;(com.test.dao)
targetProject决定生成到的目标工程;(.\src\main\java)
enableSubPackages:是否放schema做为包的后缀;(false)
<table>
schema:不用填写;
tableName:表名;
domainObjectName:自动生成的实体文件名;
mybatis逆向工程在官方文档具备很是详细的解释,包括对生成文件内容的定义,能够去掉注释,取消生成mapper文件自动生成的增删改查等。
官方文档地址:http://www.mybatis.org/generator/
去注释:(context下)
是否去除全部自动生成文件的注释:
<commentGenerator> <!-- 是否去除全部自动生成的文件的时间戳:--> <property name="suppressDate" value="false"/> <!-- 是否去除全部自动生成文件的注释:--> <property name="suppressAllComments" value="true"/> </commentGenerator>
去掉实体文件下的Example实体类文件。
<table tableName="user" enableCountByExample="false" enableUpdateByExample="false" enableDeleteByExample="false" enableSelectByExample="false" selectByExampleQueryId="false"> </table>
官方文档还有不少功能,能够进入官方文档页面查看。