1. 程式人生 > >ibatis eclipse外掛和配置檔案的使用

ibatis eclipse外掛和配置檔案的使用

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>