Spring+Mybatis的框架模式目前在小型web项目中很常见,但很多新手包括我,在使用mybatis是都是手动配置每一个实体类及其对应的mapper接口类和xml配置,最近项目中体验到了Mybatis Generator整合Ant自动生成代码,初尝甜头,与大家分享一下。
第一步:
在你的maven项目下的pom.xml文件中配置mybatis generator插件
<plugin>
<groupId>org.mybatis.generator</groupId>
<artifactId>mybatis-generator-maven-plugin</artifactId>
<version>1.3.2</version>
<!-- 插件的初始配置 -->
<configuration>
<!-- 指定插件运行的generator.xml文件位置 -->
<configurationFile>${basedir}/src/main/resources/generator/generatorConfig.xml</configurationFile>
<!-- 允许移动生成的文件-->
<verbose>true</verbose>
<!-- 允许覆盖生成的文件-->
<overwrite>true</overwrite>
</configuration>
</plugin>
第二步:
在项目的src/main/resources目录下创建generator文件夹,并创建generatorConfig.xml和其参数配置文件generatorConfig.properties
generatorConfig.properties:
#数据库连接配置
jdbc.driverClassName=net.sourceforge.jtds.jdbc.Driver
jdbc.url=*************
jdbc.username=******
jdbc.password=******
#顶级包名称
package.name=com.jusfoun.estate
#实体类包名称
module.name=planInfo
#要操作的表名
table.name=f_plan_info
#要生成的实体类名称
domain.object.name=PlanInfo
generatorConfig.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>
<!-- 参数配置文件位置,注意properties classPathEntry context 标签顺序 -->
<properties url="file:D:\WorkSpaces\testGenerator\src\main\resources\generator\generatorConfig.properties"></properties>
<!-- 数据库连接驱动包位置 -->
<classPathEntry location="D:\maven\mvnRespo\net\sourceforge\jtds\jtds\1.2.4\jtds-1.2.4.jar" />
<!-- 上下文配置 -->
<context id="Tables" targetRuntime="MyBatis3">
<!-- 设置注解信息,suppressAllComments为true时关闭注解,false时打开注解 -->
<commentGenerator>
<property name="suppressAllComments" value="true"/>
</commentGenerator>
<!-- 数据库连接配置 URL、用户名、密码-->
<jdbcConnection driverClass="${jdbc.driverClassName}"
connectionURL="${jdbc.url}"
userId="${jdbc.username}" password="${jdbc.password}">
</jdbcConnection>
<javaTypeResolver>
<property name="forceBigDecimals" value="false"/>
</javaTypeResolver>
<!-- 生成模型的包名和位置 (targetPackage和targetProject根据自己要求修改) -->
<javaModelGenerator targetPackage="${package.name}.${module.name}.domain" targetProject="src/main/java">
<property name="enableSubPackages" value="true"/>
<property name="trimStrings" value="true"/>
</javaMod