1、https://github.com/mybatis/generator/releases 下载生成器。
2、下载低版本的mysql-connector,最新版本会导致Column name pattern can not be NULL or empty.的错误,可以在
http://mvnrepository.com/artifact/mysql/mysql-connector-java
下载版本较低的版本。
3、文件夹结构如下图:
generator.xml,内容如下:
<?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:数据库的JDBC驱动的jar包地址-->
<classPathEntry location="D:\gujw\javaproject\mybatis\mybatis-generator-1.3.4\mysql-connector-java-6.0.6-bin.jar" />
<context id="DB2Tables" targetRuntime="MyBatis3">
<commentGenerator>
<!-- 是否去除自动生成的注释 true:是 : false:否 -->
<property name="suppressAllComments" value="true" />
<!--数据库连接的信息:驱动类、连接地址、用户名、密码 -->
</commentGenerator>
<jdbcConnection driverClass="com.mysql.jdbc.Driver"
connectionURL="jdbc:mysql://address=(protocol=tcp)(host=192.168.1.95)(port=6665)/datastatistics"
userId="gujw"
password="123456">
</jdbcConnection>
<!-- 默认false,把JDBC DECIMAL 和 NUMERIC 类型解析为 Integer
true,把JDBC DECIMAL 和 NUMERIC 类型解析为java.math.BigDecimal
-->
<javaTypeResolver >
<property name="forceBigDecimals" value="false" />
</javaTypeResolver>
<!-- targetProject:自动生成代码的位置 -->
<javaModelGenerator targetPackage="com.gujw.model" targetProject="D:\gujw\javaproject\mybatis\mybatis-generator-1.3.4\src">
<!-- enableSubPackages:是否让schema作为包的后缀 -->
<property name="enableSubPackages" value="true" />
<!-- 从数据库返回的值被清理前后的空格 -->
<property name="trimStrings" value="true" />
</javaModelGenerator>
<sqlMapGenerator targetPackage="sqlmap" targetProject="D:\gujw\javaproject\mybatis\mybatis-generator-1.3.4\src">
<property name="enableSubPackages" value="false" />
</sqlMapGenerator>
<javaClientGenerator type="XMLMAPPER" targetPackage="com.gujw.mapping" targetProject="D:\gujw\javaproject\mybatis\mybatis-generator-1.3.4\src">
<property name="enableSubPackages" value="true" />
</javaClientGenerator>
<!-- tableName:用于自动生成代码的数据库表;domainObjectName:对应于数据库表的javaBean类名 -->
<table tableName="AdminMembers" domainObjectName="AdminMembers" enableCountByExample="false" enableUpdateByExample="false" enableDeleteByExample="false" enableSelectByExample="false" selectByExampleQueryId="false"></table>
<table tableName="BillItem" domainObjectName="BillItem" enableCountByExample="false" enableUpdateByExample="false" enableDeleteByExample="false" enableSelectByExample="false" selectByExampleQueryId="false"></table>
</context>
</generatorConfiguration>
table其他属性:
enableCountByExample=”false”
enableUpdateByExample=”false”
enableDeleteByExample=”false”
enableSelectByExample=”false”
selectByExampleQueryId=”false”
schema即为数据库名, tableName为对应的数据库表, domainObjectName是要生成的实体类,
如果想要mapper配置文件加入sql的where条件查询, 可以将enableCountByExample等设为true,
这样就会生成一个对应domainObjectName的Example类, enableCountByExample等设为false时,
就不会生成对应的Example类了.
4、打开命令行,cd到上图的文件夹下,输入如下命令:
java -jar mybatis-generator-core-1.3.4.jar -configfile generator.xml -overwrite
src目录下会生成com,sqlmap两个文件夹。