91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

如何進行iBATIS接口應用的淺析

發布時間:2021-12-18 21:07:05 來源:億速云 閱讀:75 作者:柒染 欄目:編程語言

如何進行iBATIS接口應用的淺析,針對這個問題,這篇文章詳細介紹了相對應的分析和解答,希望可以幫助更多想解決這個問題的小伙伴找到更簡單易行的方法。

iBATIS接口應用的由來,隨著Java 5的推廣,我們有機會來改善用戶體驗。其中最重要的是借助Java 5可以消除令人生惑的類型轉換,可以消除SQL映射基于字符的調用方式。舉例來說,現在在調用SQL映射的時候是這樣的:

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

問題是很明顯的。***,上面的兩個例子中被映射的語句的名稱都是基于字符串的,而這很容易導致錯誤。這種方式也不會得到IDE工具、編譯器的支持和管理。

第二個問題是存在參數和返回值類型安全問題。在***個例子中,誰能保證參數的類型一定是Integer?而誰又能保證您得到的返回值一定是Employee類型呢?這里,編譯器也不會給出任何償錯誤報告和提示。而只有運行時異常會被拋出。

***,在集合的例子中問題也是相同的。在運行前,您可能會獲得Dogs的集合,而不是Employees。

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

iBATIS接口應用在Java 5中我們可以充分使用范型來規范集合類型。這樣,我們不需要進行特殊的配置就可以為集合類型建立一致的API。我們不需要在XML文件中聲明類型,不需要 通過字符名稱來調用被映射的語句,相反,我們可以充分利用表達好且類型安全的接口類型。沒有什么新東西需要學習,只是普通的接口就可以了。

public interface EmployeeMapper   {      Employee getEmployee (int employeeId);      List listAllEmployees();  }

這就夠了!iBATIS來幫我們實現這個接口。

現在我們可以以一種更加簡潔和安全的方式來調用被映射的語句了。

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

在上面的調用中沒有類型轉換、沒有字符串,而且參數和返回值的類型是、安全的。額外的代碼就是針對接口使用XML或者Java的標識進行配置。最多我們只需要配置SQL語句、需要進行重載的參數或者返回值類型。

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

語句的名稱(默認情況下與方法的名字一致)

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

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

而其中最有趣的就是我們可以基于方法名稱這樣的約定來生成SQL映射。以后關于配置的章節中將詳細討論這些細節。

iBATIS接口綁定的方法使得諸如Spring這樣的框架將映射類注入其他類變得容易,同時也不需要將事務管理的過多細節公開。

關于如何進行iBATIS接口應用的淺析問題的解答就分享到這里了,希望以上內容可以對大家有一定的幫助,如果你還有很多疑惑沒有解開,可以關注億速云行業資訊頻道了解更多相關知識。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

宁蒗| 蕲春县| 富民县| 萝北县| 丹凤县| 格尔木市| 新和县| 枣强县| 鲜城| 吴堡县| 天门市| 巴林左旗| 汉阴县| 夏邑县| 垣曲县| 卢龙县| 平昌县| 赣州市| 从江县| 调兵山市| 旺苍县| 鸡西市| 瑞昌市| 祥云县| 子长县| 安达市| 明光市| 湘潭县| 襄樊市| 清河县| 本溪市| 灵石县| 安国市| 九寨沟县| 谷城县| 长泰县| 文水县| 延川县| 新郑市| 亳州市| 南郑县|