<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    幫助IT團隊快速構建符合jt808協議部標的基于java技術的GPS和視頻平臺(2379423771@qq.com)

    由ibatis引起的框架設計思考

    ?? 以前,不熟悉Ibatis的時候,自己寫了一個類似Ibatis的查詢分頁框架,SQL配置在XML文件當中,提供腳本語法的功能。
    ?
    ??? 后來,覺得Ibatis完全能替代自己的框架,還有Cache、Transaction等強功能。

    ?? 但是跟蹤到源碼才發現Ibatis完成是基于內存分頁的,而且方法已經Depreciated. 內存分頁對我的應用來說,是一點不實用的,其實就是一個廢物。

    ?? 但是Ibatis又不提供任何的回調接口,可以讓調用者擴展。


    ?? 于是我不得不重新修改了Ibatis的源碼,向外部透出了一個回調接口,供分頁SQL使用,并重新打包成jar文件讓開發人員使用。

    ??? 這真是不爽之極,為什么Ibatis不能提供,這么強大的框架都做出來了,但這個小小的分頁,卻做不了,如果你做不了,其碼也要透一個接口給我呀。

    ??? 所以對于框架來說,職責的分擔,是很重要的,完成你該完成的,該擴展的地方,即要提供默認實現,也要提供接口,供調用者二次開發。這才是框架的可擴展性、靈活性所在。
    ??? 很多人在開發框架時,總期望做很多東東,自己給自己加套,反而喪失的靈活性,同時提供了很多不能擴展的實現,等于強加意志給使用者,愛用不用。

    ??? 相信很多人在用Ibatis的時候,也有同感,對于數據庫分頁查詢,應當是非常重用,非常普遍的一個功能,Ibatis竟然做的是如此的差,一些人在使用Ibatis的時候,不得不寫了兩套SQL,一個查詢總行數的,一個是查詢某一頁的SQL。實際上,ibatis完全可以根據一個SQL來生成這兩個SQL,并自動分頁。

    posted on 2007-04-13 19:09 Speed 閱讀(3423) 評論(6)  編輯  收藏 所屬分類: 框架設計 、J2EE 、Hibernate & Ibatis

    評論

    # re: 由ibatis引起的框架設計思考 2007-04-14 00:05 L

    在ibatis里面自己用參數控制來達到分頁也很容易啊。  回復  更多評論   

    # re: 由ibatis引起的框架設計思考 2007-04-14 10:02 不好說

    有同感,不過從軟件工程角度上考慮使用兩套SQL也有好處。因為兩套SQL全部可以對外公開!  回復  更多評論   

    # re: 由ibatis引起的框架設計思考 2007-04-16 09:06 千山鳥飛絕

    Ibatis的分頁確實是他的致命傷。比起hibernate,我更喜歡ibatis,因為他是直接寫sql語句的,這對那些有著復雜的表結構的項目來說非常有好處。

    Lz有位說傳參數,對mysql和oracle都比較好用,但對sqlserver卻不是那么好用了,因為sqlserver沒有分頁的方法,寫sql語句大復雜,寫存儲過程又大占系統資源了。  回復  更多評論   

    # re: 由ibatis引起的框架設計思考 2007-10-12 15:51 abcx

    我們做iBATIS分頁的時候花了一些時間,看過iBATIS的源代碼,但經理是不同意直接修改iBATIS的源代碼的。然后,就只能在外部擴展,費了不少力,總算寫出了一個簡單并且還算不錯的分頁工具程序,基于Oracle數據庫的。在iBATIS的網站上建議使用數據庫的特性來分頁,這樣iBATIS自己倒是省事了,不用考慮支持多數據庫的問題。  回復  更多評論   

    # re: 由ibatis引起的框架設計思考 2008-01-02 09:20 java_蟈蟈


    @L
    偶也覺得用參數分頁滿不錯的,呵呵,這是偶第一次用IBATIS時的分頁,http://www.tkk7.com/wyz191/articles/156923.html

    還請指教
      回復  更多評論   

    # re: 由ibatis引起的框架設計思考 2008-07-17 12:53 lan

    iBATIS原先是有分頁的功能的,但是在使用中暴露出的問題更多,如果去適應各種數據庫,就和Hibernate差不多了,這違背了iBATIS的本意和初衷。
    所以,iBATIS最終把這個功能給去掉了。

    分頁很難嗎?為什么要去用別人的,自己開發的不是更容易控制?
    一個公司開發個分頁功能不過分吧?而且還可以加上自己的特性。

    如果每個項目都需要開發一個分頁功能,那iBATIS更不可能滿足你的需要。  回復  更多評論   

    導航

    留言簿(15)

    隨筆分類

    值得一看的博客

    積分與排名

    最新評論

    閱讀排行榜

    主站蜘蛛池模板: 国产AV日韩A∨亚洲AV电影| 少妇人妻偷人精品免费视频 | 久久精品国产精品亚洲人人| a在线免费观看视频| 亚洲av无码乱码国产精品| 国产2021精品视频免费播放| 亚洲人成网站999久久久综合| 亚洲日本va午夜中文字幕久久| 91成人在线免费观看| 日韩色视频一区二区三区亚洲| 亚洲AV无码国产精品麻豆天美| 成人无遮挡毛片免费看| 久久国产福利免费| 亚洲精品综合在线影院| 国产亚洲av片在线观看16女人| 久久久久久久久免费看无码| 在线观看人成视频免费无遮挡 | 国产成人精品高清免费| 亚洲免费视频网站| 羞羞视频在线观看免费| 亚洲成av人片在线看片| 综合亚洲伊人午夜网| 大学生美女毛片免费视频| 久久免费精品一区二区| 午夜在线免费视频 | 女bbbbxxxx另类亚洲| 亚洲最大视频网站| 亚洲欧洲无码AV电影在线观看 | eeuss免费天堂影院| 亚洲一区二区三区在线观看网站 | 亚洲国产成人久久综合一区| 亚洲午夜福利717| 成人亚洲网站www在线观看| 国产大片线上免费观看| 99在线视频免费| 一个人免费视频在线观看www| 黄床大片30分钟免费看| 亚洲人成色777777精品| 亚洲人成网站在线观看播放动漫| 亚洲精品乱码久久久久久蜜桃不卡| 四虎永久在线精品免费影视|