1:abator下載:http://ibatis.apache.org/abator.html
2:將abator安裝到eclipse中
3:此時可以建立一種檔案類型:Abator for iBATIS Configuration File,建立一個
4:在 jdbcConnection 中設定要mapping的資料庫的jdbc串連
classPathEntry 是你的jdbc driver類路徑
5:javaModelGenerator,sqlMapGenerator,daoGenerator 分別設定 java dataObject、sql mapping檔案和 DAO 介面、實作類別的產生位置:targetPackage 目標包,targetProject:eclipse項目
6:daoGenerator 中可以設定屬性 type: ibatis 或 spring 指定產生的dao實作類別是使用com.ibatis.dao.client.template.SqlMapDaoTemplate
還是
org.springframework.orm.ibatis.support.SqlMapClientDaoSupport
7: table 中 tableName 指定要處理的表名
可以有多個table
8:table中可以包含子項目 generatedKey: 使Insert方法可以傳回值--由指定的column mapping
9:generatedKey中的sqlStatement屬性可以是擷取sequence的SQL,也可以是擷取自增值的SQL
比如:Oracle的 select theSequence.nextVal from dual
SQLServer的 SELECT @@IDENTITY as column_name
10:儲存檔案,選中檔案,右鍵菜單選擇Generate iBATIS Artifacts!
所有的參數都是寫在這個根節點中,下面可以用 來產生個自的iBATIS設定檔、Java Bean和DAO
abatorContext的一個屬性generatorSet有3個選項Legacy、Java2、Java5
Legacy:如果沒有generatorSet屬性的話,預設是Legacy。但並不推薦使用Legacy因為它在產生Example類(用於查詢條件)的時候有很多限制,他將查詢條件寫在sqlMap設定檔中,將查詢值寫在Example中,這樣就對修改產生一些困難。
Java2和Java5:他們只支援iBATIS 2.20以上的版本。在以這個模式成生的Example檔案中包含了查詢條件和查詢值。這樣修改就方便多了,對於用join的select時的查詢就更方 便了,自己可以定義查詢條件,自由度高了很多(對於join的and查詢可能還得自己修改一下Example代碼)。對於or和and的應用Legacy 的限制就比較大了。
描述了JDBC的屬性和其jar包的位置.
、 、 描述了個自產生的位置。中type屬性則用來告訴abator產生的DAO是用於iBATIS還是SPRING等容器。
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 generatorSet="Java2"> <!-- TODO: Add Database Connection Information -->
<jdbcConnection driverClass="oracle.jdbc.driver.OracleDriver"
connectionURL="jdbc:oracle:thin:@192.168.80.119:1521:po2db"
userId="lnga"
password="123">
<classPathEntry location="D:/LNGA/lnga/project/trunk/src/main/webapp/WEB-INF/lib/classes12.jar" />
</jdbcConnection>
<javaModelGenerator targetPackage="com.iflytek.model.pojo" targetProject="lnga" />
<sqlMapGenerator targetPackage="com.iflytek.dao.sqlMap" targetProject="lnga" />
<daoGenerator type="SPRING" targetPackage="com.iflytek.dao" targetProject="lnga">
<property name="enableSubPackages" value="true" ></property>
</daoGenerator>
<table tableName="AJCB_ANJIAN" ></table>
<table tableName="AJCB_ANJIANBEIZHU">
</table>
</abatorContext>
</abatorConfiguration>