Ibatis的学习笔记

Ibatis的学习笔记

ID:37581441

大小:90.00 KB

页数:8页

时间:2019-05-25

Ibatis的学习笔记_第1页
Ibatis的学习笔记_第2页
Ibatis的学习笔记_第3页
Ibatis的学习笔记_第4页
Ibatis的学习笔记_第5页
资源描述:

《Ibatis的学习笔记》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、Ibatis的學習筆記現在最如日中天的是Hibernate,但老朽學了一下,然後就沒有再學下去,原因簡單,因為設計思路不同。以前做的系統全是在設計完成後,數據庫先行,並且有大量的主從表以及存儲過程,觸發器以及函數等內容,這是由於需要充分利用DBMS本身的優化設計以提高性能和使用的便利,這點Hibernate是無法體會得到的。另外,這種設計思想對於熟悉SQL的人來講並感覺不到太大的方便之處,除了不用再在編寫增修刪等的工作上進行重復勞動,而HQL更是有點過分的感覺。當然,老朽對Hibernate了解不多,所以可能其沒非如此弱也不一定,但已經不想再花時間來更深入的了解一下了,這

2、個時間可以設計一個新的ORM,差不多吧?差多了,呵呵。其優點在於:1.由面向表格轉為面向對象,其實這樣說有偏頗之處,表格如果是按基本的設計方式來的話,大部分是實體的數據表現,其本身就是對象,雖然是基於關系數據庫的表現。2.隱藏了SQL,就是將對數據庫系統的直接操作隱藏了起來,好處是使不諳數據庫的開發人員可以不用再學,而直接使用某語言的方式就可以做,壞處是,這樣使得數據庫本身只是成為了數據存儲器,而其本身的好處再也體現不出來了。好象上面說的不是優點,不過第一句話是優點的,確實是,但其後面卻有幾個概念和應用上的誤解,目前對很多初入門的同學影響很大,唉,計算機應用的技術又豈是一

3、語可蓋之的,因為應用是世界一種在基礎層面之上一個層面的表現方式,故亦如世界本身一樣,包羅萬象也。好久以前,大約一年多了吧,知道有個ibatis這樣一個東西,卻一直沒有看一下,只是由朋友和一些簡要的文檔那裡知道一些特性,就是它是由自己定義SQL來的,沒有完全封裝,所以提供了更大的自由度和擴展性,於是,也就不如Hibernate來的徹底和方便。應用學習者,由實例入門也,此方為正途,省時又易上手。於是編一個小小的例子,只對一個單表進行基本操作,感覺還行,例程寫法,後面再一步步的來列出來,兼之批評一下,有一些文章對例程往往語焉不詳,特別在當前配置文件大行其道的時候,對配置文件的位

4、置竟然不講,而且一文中,文件名始與終不統一,頗有些始亂終棄的感覺,嘿嘿,此詞用得可能不好,卻是最好的寫照,此類文章是浪費時間的最好去處,讀到最後,按例程走的結果是失敗,真是賠了時間又走錯路。好了,在做完該小例後,開始亂想,主要有幾個方面:1.主從表的處理2.存儲過程的處理1.不規則查詢的處理2.編寫工具程序的實現最近可能是由於更多傾向於IDE的設計,所以對第四條想得比較多些,對於主從表的處理,老朽一直沒有想到一個比較好的處理方法,特別對於數據新增和修改的准確性上面,很是有點頭痛。主從表的問題,主要是體現在對主從表同時新增和修改的情況,從表數據的准確性驗證比較復雜。事務在這

5、裡並不是萬能的,所以這裡應該更多的考慮在數據庫之前的驗證准確性應該是解決問題的核心所在吧。編寫工具程序,想了一下,對ibatis如果要進行編寫並不是一個簡單的事情,因為裡面客制化的內容比較多,想了一下,就決定不想了。最近更在考慮一個元對象的問題,就是將類的屬性本身實際上也是一個對象,那麼這個類別的類的設計,其實也就是一種元數據了,這樣可以對類的屬性進行統一,從而可以在應用層處理上提供更大的方便,比如輸入界面,可以通過程序直接動態拉出來等等吧。參考文檔:1.iBATISDatabaseLayer開發指南ClintonBegin著 劉濤譯 www.ibatis.com附:ib

6、atis例程(注:該例來自於參考文檔,改正了其中的部分錯誤)1.構造環境1.1.建立project目錄結構,這一部分很簡單,老朽用eclipse,目錄結構如下:1.2.將相關的類庫包文件復制至ibatis目錄下面,並加入到該工程的buildpath,就是加入classpath:如此,工程的基本環境構建完成。2.建立數據表並設置數據源(注:在這裡,為了方便,使用了橋接方式)1.1.建立數據表,SQL如下,老朽用的是SQLServer,無他,只因機器上有。CREATETABLEPERSON(PER_IDnumeric(5,0)NOTNULL,PER_FIRST_NAMEvar

7、char(40)NOTNULL,PER_LAST_NAMEvarchar(40)NOTNULL,PER_BIRTH_DATEdatetimeNULL,PER_WEIGHT_KGnumeric(4,2)NOTNULL,PER_HEIGHT_Mnumeric(4,2)NOTNULL,PRIMARYKEY(PER_ID))1.2.建立數據源,並指向Person表所在的數據庫2.編寫例程代碼,在這裡,只是建立對Person表的基本操作代碼,如新增,修改和刪除而已。2.1.Person.java這是基本類,該類就是提供一個基本結構pac

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。