久久精品人人爽,华人av在线,亚洲性视频网站,欧美专区一二三

ibatis一對多數(shù)據(jù)庫如何實現(xiàn)

176次閱讀
沒有評論

共計 1972 個字符,預(yù)計需要花費 5 分鐘才能閱讀完成。

這篇文章主要介紹了 ibatis 一對多數(shù)據(jù)庫如何實現(xiàn)的相關(guān)知識,內(nèi)容詳細易懂,操作簡單快捷,具有一定借鑒價值,相信大家閱讀完這篇 ibatis 一對多數(shù)據(jù)庫如何實現(xiàn)文章都會有所收獲,下面我們一起來看看吧。

iBatis 的多表關(guān)聯(lián)。ibatis 的表關(guān)聯(lián), 和數(shù)據(jù)庫語句無關(guān), 是在 Java 程序中, 把若干語句的結(jié)果關(guān)聯(lián)到一起。這種關(guān)聯(lián)形式, 雖然在大數(shù)據(jù)量時是很奢侈的行為, 但是看起來很干凈, 用起來也很方便。這里用表 lock 和 key 為例, 一個 lock 可以配多個 key。CREATETABLE lock(
 id int,
 lockName varchar
CREATETABLEkey(
 id int,
 lockId int,
 keyName varchar
); 定義映射類
package zzcv.dao.domain;
publicclass Lock
 privateint id;
 private String lockName;
 private List Key  keys = new ArrayList Key 
 
 publicvoid getId(){
 return..
 ...
 // 省略
package zzcv.dao.domain;
publicclass Key
 privateint id;
private String keyName;
 private Lock lock; ...
 // 省略
} 表關(guān)聯(lián)通過配置文件的 resultMap 實現(xiàn), 不需要關(guān)聯(lián)的查詢?nèi)钥捎?resultClass
 sqlMap namespace= test  
  typeAlias alias= Key = zzcv.dao.domain.Key /  
  typeAlias alias= Lock = zzcv.dao.domain.Lock /  
 
  resultMap id= KeyResult = Key  
  result property= id = id /  
  result property= keyName = keyName /  
  result property= lock = lockId = getLockById /  
  /resultMap 
  !---- 
 
  resultMap id= LockResult = Lock  
  result property= id = id /  
  result property= lockName = lockName /  
  result property= keys = id = getKeysByLockId /  
  /resultMap 
  !---- 
 
  !---- 
 
  select id= selectAllkeys = KeyResult  
  ![CDATA[ 
 select id,lockId,keyName from key
 ]]  
  /select  
 
  select id= getLockById = int = Lock  
  ![CDATA[ 
 select id,lockName from lock where id = #value# 
 ]]  
  /select 
 
  select id= selectAllLocks = LockResult  
  ![CDATA[ 
 select id,lockName from lock
 ]]  
  /select  
 
  select id= getKeyByLockId = int = key  
  ![CDATA[ 
 select id,lockId,keyName from lock where lockId = #value# 
 ]]  
  /select 
 /sqlMap   現(xiàn)在可以代碼中使用了
 ...
 ..
 try{
 Reader reader = mxd/dao/data/SqlMapConfig.xml 
 sqlMapper = SqlMapClientBuilder.buildSqlMapClient(reader);
 reader.close(); }
 catch(IOException e){ thrownew Something bad happened while building the SqlMapClient instance. + e, e);}
 List locks=sqlMapper.queryForList( selectAllLocks 
 // 取一個 Lock 對象。=(Lock)locks.get(0);
 // 從 Lock 對象取 List Key。=lock.getKeys();
 // 示例結(jié)束, 取到結(jié)果了, 剩余的一個關(guān)聯(lián)是取對象 Lock, 其余操作差不多, 就不寫出了。 ...

關(guān)于“ibatis 一對多數(shù)據(jù)庫如何實現(xiàn)”這篇文章的內(nèi)容就介紹到這里,感謝各位的閱讀!相信大家對“ibatis 一對多數(shù)據(jù)庫如何實現(xiàn)”知識都有一定的了解,大家如果還想學習更多知識,歡迎關(guān)注丸趣 TV 行業(yè)資訊頻道。

正文完
 
丸趣
版權(quán)聲明:本站原創(chuàng)文章,由 丸趣 2023-07-13發(fā)表,共計1972字。
轉(zhuǎn)載說明:除特殊說明外本站除技術(shù)相關(guān)以外文章皆由網(wǎng)絡(luò)搜集發(fā)布,轉(zhuǎn)載請注明出處。
評論(沒有評論)
主站蜘蛛池模板: 沧源| 拉萨市| 中方县| 陆川县| 沈阳市| 治多县| 吉林省| 潞城市| 绵竹市| 喀喇沁旗| 靖西县| 开化县| 崇文区| 西安市| 康乐县| 安龙县| 饶阳县| 西乌| 宽甸| 南通市| 察哈| 新蔡县| 五台县| 罗平县| 安西县| 本溪| 吉首市| 白玉县| 高阳县| 黄龙县| 永新县| 交城县| 苍山县| 法库县| 皋兰县| 嘉祥县| 万年县| 石河子市| 南靖县| 左云县| 香港|