我们在使用ibatis的时候,一定要用到大量的代码,如果有工具能够帮助我们完成ibatis自动代码生成的话那无疑是一件省时省力的事情。本文轻松的让你根据数据库表生成访问数据库的ibatis自动代码。
想要实现ibatis自动代码生成需要执行以下几个步骤。
一、获得
http://ibatis.apache.org/abator.html
二、下载以后解包到目录
D:\abator-0.6.5-124
\abator.jar
\abator-src.zip
三、配置文件
新建一个配置文件config.xml,内容如下:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE abatorConfiguration PUBLIC
"-//Apache Software Foundation//DTD Abator for iBATIS Configuration 1.0//EN"
"http://ibatis.apache.org/dtd/abator-config_1_0.dtd">
<abatorConfiguration>
<abatorContext>
<!-- TODO: Add Database Connection Information -->
<jdbcConnection driverClass="oracle.jdbc.OracleDriver"
connectionURL="jdbc:oracle:thin:@172.17.1.103:1521:ora18"
userId="test"
password="test">
<classPathEntry location="D:/Setup/JavaLib/classes12.jar" />
</jdbcConnection>
<javaTypeResolver >
<property name="forceBigDecimals" value="false" />
</javaTypeResolver>
<javaModelGenerator targetPackage="test"
targetProject="\test">
<property name="enableSubPackages" value="true" />
<property name="trimStrings" value="true" />
</javaModelGenerator>
<sqlMapGenerator targetPackage="test"
targetProject="\test">
<property name="enableSubPackages" value="true" />
</sqlMapGenerator>
<daoGenerator type="IBATIS" targetPackage="test"
targetProject="\test">
<property name="enableSubPackages" value="true" />
</daoGenerator>
<table tableName="T_AREA_CODE">
<columnOverride column="AREA_CODE" property="AREA_CODE" ></columnOverride>
</table>
</abatorContext>
</abatorConfiguration>
这里是Oracle相关的配置,其他数据库可以以此类推,其中的javaModelGenerator ,sqlMapGenerator ,daoGenerator是将会生成的相关代码,可以根据你自己的需要添加或删除,更完整的配置文件可以看DTD的定义。 http://ibatis.apache.org/dtd/abator-config_1_0.dtd
四、运行(在D盘根目录下新建目录test,需要存放生成的文件)
java -jar abator.jar config.xml false
java -jar abator.jar config.xml true
java -cp abator.jar org.apache.ibatis.abator.api.AbatorRunner config.xml false
java -cp abator.jar org.apache.ibatis.abator.api.AbatorRunner config.xml true
上面四种方式都可以运行,true/false表示是否覆盖原来的代码
五、查看生成的文件,修改
运行成功后会有如下信息:
Abator finshed successfully, there were warninigs
至此,你可以手动修改生成的ibatis自动代码了。
【编辑推荐】