天天看点

用mybatis generator自动生成代码

步骤1:

下载http://mybatis.googlecode.com/files/mybatis-generator-core-1.3.1-bundle.zip 并解压

步骤2:

新建一个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: 设置mysql驱动路径 -->

<classPathEntry location="D:\mybatistool\mybatis-generator-core-1.3.1\lib\mysql-connector-java-5.1.16-bin.jar" />

<context id="DB2Tables" targetRuntime="MyBatis3">

<!-- jdbc连接信息 -->

<commentGenerator>

<property name="suppressAllComments" value="true" />

</commentGenerator>

<jdbcConnection driverClass="com.mysql.jdbc.Driver" connectionURL="jdbc:mysql://192.168.0.250:3306/erp" userId="root" password="root">

</jdbcConnection>

<javaTypeResolver >

<property name="forceBigDecimals" value="false" />

</javaTypeResolver>

<!-- 生成vo对象 -->

<javaModelGenerator targetPackage="com.wxws.crmanager.pojos" targetProject="E:\workspaces\test">

<property name="enableSubPackages" value="true" />

<property name="trimStrings" value="true" />

</javaModelGenerator>

<!-- 生成用于查询的Example对象 -->

<sqlMapGenerator targetPackage="mybatis.crmanager"  targetProject="E:\workspaces\test\resources">

<property name="enableSubPackages" value="true" />

</sqlMapGenerator>

<!-- 生成DAO的类文件以及配置文件 -->

<javaClientGenerator type="XMLMAPPER" targetPackage="com.wxws.crmanager.dao"  targetProject="E:\workspaces\test">

<property name="enableSubPackages" value="true" />

</javaClientGenerator>

<!-- tableName:想要生成的数据库表,自动化工具会根据该表的结构生成相应的vo对象 -->

<table tableName="crm_clientinfo" domainObjectName="clientinfo" />

<table tableName="crm_cuslinkman" domainObjectName="cuslinkman" />

<table tableName="crm_cuscontactrecord" domainObjectName="cuscontactrecord" />

</context>

</generatorConfiguration>

保存,并记录该文件的路径,我的存放路径为:D:\mybatistool\mybatis-generator-core-1.3.1\genrator.xml 

步骤3:

创建文件存放的工程:我这里只建了一个文件夹,包含一个resources路径,resources路径将存放映射的xml文件。

用mybatis generator自动生成代码
用mybatis generator自动生成代码

步骤4:

执行cmd命令,

进入解压好的mybatis-generator-core-1.3.1.jar所在路径,我的是:D:\mybatistool\mybatis-generator-core-1.3.1\lib

执行以下命令:

D:\mybatistool\mybatis-generator-core-1.3.1\lib>java -jar mybatis-generator-core-1.3.1.jar -configfile D:\mybatistool\mybatis-generator-core-1.3.1\genrator.xml -overwrite

执行结果如下:

用mybatis generator自动生成代码
用mybatis generator自动生成代码

生成文件如下:

用mybatis generator自动生成代码
用mybatis generator自动生成代码
用mybatis generator自动生成代码
用mybatis generator自动生成代码
用mybatis generator自动生成代码
用mybatis generator自动生成代码

然后可以将生成的代码移到你的工程目录,进行对应的编码。

如果修改了表结构,重新生成代码时后可能会出现 java.lang.IllegalArgumentException: Result Maps collection already contains value for XXX这个错误。

那是因为生成代码时xml文件已存在,所以会多出很多重复的代码,所以必须将目录下的原文件删除或者备份,再重新生成。