為了降低侵入性,更好的被引用,對bba96核心部分進(jìn)行了大量重構(gòu),去除了冗贅的層次與不必要的接口,并借助jdk5.0范型進(jìn)行了代碼精簡。發(fā)布了bba96 tiger beta2,這個版本已經(jīng)是比較穩(wěn)定的版本,具體的改動如下
- 去除所有的接口依賴,可直接在任何項目中直接調(diào)用
- service的兩層合并為一層且去除service層的接口,但DAO曾仍保留接口以備擴(kuò)展更多的orm實現(xiàn)
- 增加sql execute的方法
- 增強源自view的直接查詢能力
- 參數(shù)名由原來難看的oriNames, oriOperators, oriStringValues改為直觀的searchName, searchOperator, searchValue
- 增加了對QueryParam的toString功能,可打出對應(yīng)的sql,便于調(diào)試,參見com.bba96.tiger.util.QueryWebUtils的main函數(shù)
下載頁面地址:https://bba96.dev.java.net/servlets/ProjectDocumentList?folderID=4149&expandFolder=4149&folderID=0
如果你使用spring+hibernate,而又不喜歡hibernate criteria的麻煩,不妨嘗試一下bba96,你可以把主要精力放到業(yè)務(wù)方面。DefaultEntityManager提供了很多單層邏輯的便利方法給你使用,其中也包括執(zhí)行hsql或者sql查詢/更新的方法,如果你要多層次邏輯的條件查詢可以自己組裝QueryObject,參見com.bba96.tiger.util.QueryWebUtils的main函數(shù)。bba96還提供給你在view層自由增加查詢的能力。
tiger版本僅提供了dao/service部分,所以如果你希望在view 查詢的安全性方面得到加強,可參考bba96 2.0其中的webwork view部分,權(quán)限部分也沒有包含在tiger中,希望盡快把包括例子的權(quán)限部分遷移過來,但還需要一點時間,最近在忙一個CMS的產(chǎn)品,時間不夠用啊……
在SpringSide項目中webwork MVC部分應(yīng)用到bba96 tiger對view部分的查詢,有興趣可以看看,這里也要推薦一下SpringSide,確實有很多很好的經(jīng)驗在里面可以借鑒。