深藍色心情

          過來聊聊~~~~

            BlogJava :: 首頁 :: 聯(lián)系 :: 聚合  :: 管理
            31 Posts :: 0 Stories :: 46 Comments :: 0 Trackbacks

          guzz是一套用來解決ORM、多數(shù)據(jù)源管理、以及通用數(shù)據(jù)計算的數(shù)據(jù)層框架,為系統(tǒng)在數(shù)據(jù)層的設計提供一站式解決方案。guzz可以看作是 ibatis/hibernate的一大的延伸,并可以取代這2個東西。 

          guzz主要功能與特點: 
          • 現(xiàn)代大規(guī)模系統(tǒng)設計,技術上吸收了ibatis/hibernate的優(yōu)點
          • 支持像hibernate一樣的對象化持久、映射和方便的增刪改查
          • 支持像ibatis一樣,讓dba參與sql設計的復雜數(shù)據(jù)庫操作和優(yōu)化
          • 支持在線加載與調(diào)試SQL。按照應用策略,從文件/數(shù)據(jù)庫/Web Service等途徑,動態(tài)提取與使用SQL語句(Dynamic SQL)
          • 支持應用程序使用大量的數(shù)據(jù)庫和主從讀寫分離
          • 支持超越范式的特殊關聯(lián)、非結(jié)構化數(shù)據(jù)等異構資源的統(tǒng)一管理
          • 支持數(shù)據(jù)表在多組機器間水平分布(Shard),并自動維護多組機器之間的分布式事務
          • 支持1張表按照業(yè)務規(guī)則分切成多張小表(Shadow),并支持每張小表擁有自己特殊的屬性字段(Custom)
          • 支持組件化服務(SOA),構建企業(yè)/項目實施基礎平臺
          • 提供面向?qū)ο蟮臄?shù)據(jù)庫讀取標簽(JSP Taglib),加快頁面展示層的快速變更、開發(fā)與部署
          • 支持配置管理服務器,可以使用一套軟件系統(tǒng)對所有應用程序的配置進行統(tǒng)一管理
          項目地址:http://code.google.com/p/guzz/ 
          文檔:http://code.google.com/p/guzz/wiki/WikiHomePage?tm=6 

          1.2.8 beta2更新介紹: 

          支持動態(tài)管理SQL: 

          動態(tài)SQL(Dynamic SQL)不是指應用程序動態(tài)的拼接SQL語句,動態(tài)SQL是指應用程序可以動態(tài)的獲取配置好的SQL語句。在獲取的過程中,SQL語句如何管理,由應用系統(tǒng)自身決定。 

          換句話說,在ibatis中,SQL語句配置到ibatis.xml文件中,在guzz中,配置到guzz.xml中。但當配置完成后,在系統(tǒng)運行期間這些SQL都是不能變動的,如果需要添加1個或者修改優(yōu)化1個SQL語句,必須重啟應用才能生效。而動態(tài)SQL允許應用系統(tǒng)動態(tài)的管理(添加/修改/優(yōu)化/刪除)sql語句以及查詢結(jié)果到對象的映射關系(ORM),對于SQL的變更不再需要重啟應用系統(tǒng),以簡化維護與應對需求變化。 

          動態(tài)SQL主要有兩種應用場景:SQL優(yōu)化和動態(tài)數(shù)據(jù)源。具體介紹請參看:http://code.google.com/p/guzz/wiki/TutorialDynamicSQLService 

          改進遠程服務設計: 

          增加對hessian, burlap協(xié)議的支持。目前guzz內(nèi)置支持phprpc, hessian, burlap三種協(xié)議進行RPC遠程調(diào)用。使用時,三種協(xié)議可以透明替換,類似spring對RMI類協(xié)議的封裝。具體介紹請參看:http://code.google.com/p/guzz/wiki/TutorialFutureService 

          增加枚舉類型與類型參數(shù)化支持: 

          按照TopLink的模式,支持JDK5 enum。Enum在使用時和普通類型一樣,不需要實現(xiàn)特殊的接口(hibernate要求實現(xiàn)接口)。Enum支持通過JPA的Enumeration注釋聲明,也支持在hbm.xml中通過xml定義。通過xml的定義方式參看:http://code.google.com/p/guzz/wiki/TutorialHbmXml 

          類型參數(shù)化為guzz的特殊功能,用于處理動態(tài)SQL參數(shù)和Jsp Taglib條件參數(shù)時,將String類型自動轉(zhuǎn)換成需要的數(shù)據(jù)類型。參數(shù)化類型主要為日期和枚舉。詳細介紹:http://code.google.com/p/guzz/wiki/TutorialHbmXml 

          增加對數(shù)據(jù)庫保留字的支持: 

          在定義數(shù)據(jù)庫列名時,可以用`(ESC下面的鍵)將列名引起來,避免字段名稱與數(shù)據(jù)庫保留字沖突。此功能與hibernate提供的處理保留字方法相同,但guzz只支持字段,不支持`表名`。 

          增加對Microsoft SQL Server的支持(未測試): 

          參考hibernate實現(xiàn)了一個SQL Server 2000 & 2005的dialect,不支持分頁。沒有測試過。Dialect實現(xiàn)類:org.guzz.dialect.MSSQLDialect 

          Guzz已經(jīng)能夠支持的數(shù)據(jù)庫和數(shù)據(jù)類型請參看: 
          http://code.google.com/p/guzz/wiki/TutorialGuzzXml 

          應用示例說明: 

          http://code.google.com/p/guzz/wiki/TutorialDynamicSQLService 

          下一版本計劃: 

          • 修復發(fā)現(xiàn)的bug。
          • 設計一些常見的服務,推廣guzz基礎服務理念。
          posted on 2010-05-26 10:13 深藍色心情 閱讀(1741) 評論(2)  編輯  收藏 所屬分類: Java

          Feedback

          # re: guzz1.2.8 beta2發(fā)布--支持動態(tài)加載在線調(diào)試SQL 2010-05-28 13:53 羅萊家紡官方網(wǎng)站
          按開始的南三段  回復  更多評論
            

          # re: guzz1.2.8 beta2發(fā)布--支持動態(tài)加載在線調(diào)試SQL[未登錄] 2010-06-10 00:22 stephen
          這么好的東西怎么就沒人賞識呢?中國人,唉....只會抄,如果多幾個博主這樣的人就好了,有創(chuàng)新啊  回復  更多評論
            

          主站蜘蛛池模板: 连城县| 武陟县| 达孜县| 晋州市| 平安县| 浪卡子县| 弥渡县| 东港市| 宜黄县| 吴川市| 昂仁县| 馆陶县| 府谷县| 绥江县| 绵阳市| 临武县| 江山市| 图们市| 宜兴市| 中阳县| 瑞丽市| 许昌市| 孟连| 广元市| 罗源县| 芒康县| 垦利县| 闻喜县| 双峰县| 桃园县| 宁都县| 内江市| 武安市| 克东县| 湘乡市| 大竹县| 左贡县| 资中县| 思茅市| 清涧县| 犍为县|