自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

iBATIS接口應(yīng)用的淺析

開(kāi)發(fā) 后端
iBATIS接口應(yīng)用向你介紹在實(shí)例中,iBATIS接口的綁定,那么希望本文將會(huì)對(duì)你有所幫助。

iBATIS接口應(yīng)用的由來(lái),隨著Java 5的推廣,我們有機(jī)會(huì)來(lái)改善用戶體驗(yàn)。其中最重要的是借助Java 5可以消除令人生惑的類型轉(zhuǎn)換,可以消除SQL映射基于字符的調(diào)用方式。舉例來(lái)說(shuō),現(xiàn)在在調(diào)用SQL映射的時(shí)候是這樣的:

  1. Employee employee = (Employee)sqlMapper.queryForList("getEmployee"5);  
  2. //...and...  
  3. List employees = sqlMapper.queryForList("listAllEmployees"); 

問(wèn)題是很明顯的。***,上面的兩個(gè)例子中被映射的語(yǔ)句的名稱都是基于字符串的,而這很容易導(dǎo)致錯(cuò)誤。這種方式也不會(huì)得到IDE工具、編譯器的支持和管理。

第二個(gè)問(wèn)題是存在參數(shù)和返回值類型安全問(wèn)題。在***個(gè)例子中,誰(shuí)能保證參數(shù)的類型一定是Integer?而誰(shuí)又能保證您得到的返回值一定是Employee類型呢?這里,編譯器也不會(huì)給出任何償錯(cuò)誤報(bào)告和提示。而只有運(yùn)行時(shí)異常會(huì)被拋出。

***,在集合的例子中問(wèn)題也是相同的。在運(yùn)行前,您可能會(huì)獲得Dogs的集合,而不是Employees。

總之,這種方式雖然比JDBC強(qiáng),但是也讓人倍感難受,還是存在改善的空間。

iBATIS接口應(yīng)用在Java 5中我們可以充分使用范型來(lái)規(guī)范集合類型。這樣,我們不需要進(jìn)行特殊的配置就可以為集合類型建立一致的API。我們不需要在XML文件中聲明類型,不需要 通過(guò)字符名稱來(lái)調(diào)用被映射的語(yǔ)句,相反,我們可以充分利用表達(dá)好且類型安全的接口類型。沒(méi)有什么新東西需要學(xué)習(xí),只是普通的接口就可以了。

  1. public interface EmployeeMapper   
  2. {    
  3.   Employee getEmployee (int employeeId);    
  4.   List listAllEmployees();  

這就夠了!iBATIS來(lái)幫我們實(shí)現(xiàn)這個(gè)接口。

現(xiàn)在我們可以以一種更加簡(jiǎn)潔和安全的方式來(lái)調(diào)用被映射的語(yǔ)句了。

  1. Employee emp = empMapper.getEmployee(5);  
  2. //...and...  
  3. List employees = empMapper.listAllEmployees(); 

在上面的調(diào)用中沒(méi)有類型轉(zhuǎn)換、沒(méi)有字符串,而且參數(shù)和返回值的類型是、安全的。額外的代碼就是針對(duì)接口使用XML或者Java的標(biāo)識(shí)進(jìn)行配置。最多我們只需要配置SQL語(yǔ)句、需要進(jìn)行重載的參數(shù)或者返回值類型。

接口描述了所需要的一切。

語(yǔ)句的名稱(默認(rèn)情況下與方法的名字一致)

參數(shù)類型(如果存在的話)

返回值類型(包括范型集合的元素的類型)

而其中最有趣的就是我們可以基于方法名稱這樣的約定來(lái)生成SQL映射。以后關(guān)于配置的章節(jié)中將詳細(xì)討論這些細(xì)節(jié)。

iBATIS接口綁定的方法使得諸如Spring這樣的框架將映射類注入其他類變得容易,同時(shí)也不需要將事務(wù)管理的過(guò)多細(xì)節(jié)公開(kāi)。

那么以上就是iBATIS接口應(yīng)用方面的簡(jiǎn)單介紹,希望對(duì)你有所幫助。

【編輯推薦】

  1. iBATIS分頁(yè)源碼真相探討
  2. iBATIS教程之入門淺析
  3. Hibernate與iBATIS的較量淺析
  4. iBATIS實(shí)例創(chuàng)建的五大步淺析
  5. iBATIS with MapBean應(yīng)用淺析
責(zé)任編輯:仲衡 來(lái)源: 中國(guó)IT實(shí)驗(yàn)室
相關(guān)推薦

2009-07-17 10:32:45

iBATIS MapB

2009-07-16 13:08:09

iBATIS快速創(chuàng)建應(yīng)

2009-07-22 11:11:39

iBATIS分頁(yè)實(shí)例ObjectDataS

2009-07-21 11:12:00

iBATIS配置

2009-07-15 17:58:07

iBATIS 動(dòng)態(tài)映射

2009-07-16 10:23:30

iBATIS工作原理

2009-07-22 10:42:59

iBATIS Cach

2009-07-22 10:03:11

iBATIS Resu

2009-07-16 09:14:26

iBATIS DAO

2009-07-20 18:00:16

iBATIS DAO事

2009-07-15 17:19:31

iBATIS Ecli

2009-07-22 13:04:41

iBATIS動(dòng)態(tài)查詢

2009-07-22 16:02:14

iBATIS參數(shù)

2009-07-17 09:44:40

iBATIS教程

2009-07-22 15:01:01

iBATIS SQLM

2009-07-17 17:05:44

iBATIS緩存cacheModel

2009-07-22 15:21:00

iBATIS SQLM

2009-07-22 09:44:05

iBATIS Para

2009-07-15 16:42:03

iBATIS讀寫CLO

2009-07-17 10:08:39

Hibernate與i
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)