首頁 資料庫 mysql教程 数据层框架guzz1.2.8 正式版发布 支持注解与动态SQL

数据层框架guzz1.2.8 正式版发布 支持注解与动态SQL

Jun 07, 2016 pm 03:42 PM
發布 支援 數據 框架 正式版 註解

guzz是一套用来解决ORM、多数据源管理、以及通用数据计算的数据层框架,为系统在数据层的设计提供一站式解决方案。guzz可以看作是 ibatis/hibernate的一大的延伸,并可以取代这2个东西。 guzz主要功能与特点: 现代大规模系统设计,技术上吸收了ibatis/hiber

guzz是一套用来解决ORM、多数据源管理、以及通用数据计算的数据层框架,为系统在数据层的设计提供一站式解决方案。guzz可以看作是 ibatis/hibernate的一大的延伸,并可以取代这2个东西。

guzz主要功能与特点:

    >现代大规模系统设计,技术上吸收了ibatis/hibernate的优点

    >支持像hibernate一样的对象化持久、映射和方便的增删改查

    >支持像ibatis一样,让dba参与sql设计的复杂数据库操作和优化

    >支持在线加载与调试SQL。按照应用策略,从文件/数据库/Web Service等途径,动态提取与使用SQL语句(Dynamic SQL)

    >支持应用程序使用大量的数据库和主从读写分离

    >支持超越范式的特殊关联、非结构化数据等异构资源的统一管理

    >支持数据表在多组机器间水平分布(Shard),并自动维护多组机器之间的分布式事务

    >支持1张表按照业务规则分切成多张小表(Shadow),并支持每张小表拥有自己特殊的属性字段(Custom)

    >支持组件化服务(SOA),构建企业/项目实施基础平台

    >支持配置管理服务器,可以使用一套软件系统对所有应用程序的配置进行统一管理

项目地址:http://code.google.com/p/guzz/

文档:http://code.google.com/p/guzz/wiki/WikiHomePage?tm=6

下载:http://code.google.com/p/guzz/downloads/list

1.2.8 更新介绍:

支持(JPA)annotation

支持按照JPA规范的annotation进行对象映射声明,同时为了实现guzz特有的功能,对annotation进行了扩展。扩展方式与hibernate类似,如果看到与hibernate annotation名字相同的注解,含义和用法也基本相同。

更多介绍请参看使用手册:
Guzz Annotation使用帮助:http://code.google.com/p/guzz/wiki/TutorialHbmAnnotation

Guzz Annotation参考手册:http://code.google.com/p/guzz/wiki/AppendJPAAnnotation

支持动态管理SQL:

动态SQL(Dynamic SQL)不是指应用程序动态的拼接SQL语句,动态SQL是指应用程序可以动态的获取配置好的SQL语句。在获取的过程中,SQL语句如何管理,由应用系统自身决定。

换句话说,在ibatis中,SQL语句配置到ibatis.xml文件中,在guzz中,配置到guzz.xml中。但当配置完成后,在系统运行期间这些SQL都是不能变动的,如果需要添加1个或者修改优化1个SQL语句,必须重启应用才能生效。而动态SQL允许应用系统动态的管理(添加/修改/优化/删除)sql语句以及查询结果到对象的映射关系(ORM),对于SQL的变更不再需要重启应用系统,以简化维护与应对需求变化。

动态SQL主要有两种应用场景:SQL优化和动态数据源。具体介绍请参看:http://code.google.com/p/guzz/wiki/TutorialDynamicSQLService

使用动态SQL的应用设计架构参考:http://guzz.javaeye.com/blog/675955

改进远程服务设计:

增加对hessian, burlap协议的支持。目前guzz内置支持phprpc, hessian, burlap三种协议进行RPC远程调用。使用时,三种协议可以透明替换,类似spring对RMI类协议的封装。具体介绍请参看:http://code.google.com/p/guzz/wiki/TutorialFutureService

增加枚举类型与类型参数化支持:

按照TopLink的模式,支持JDK5 enum。Enum在使用时和普通类型一样,不需要实现特殊的接口(hibernate要求实现接口)。Enum支持通过JPA的Enumeration注释声明,也支持在hbm.xml中通过xml定义。通过xml的定义方式参看:http://code.google.com/p/guzz/wiki/TutorialHbmXml

类型参数化为guzz的特殊功能,用于处理动态SQL参数和Jsp Taglib条件参数时,将String类型自动转换成需要的数据类型。参数化类型主要为日期和枚举。详细介绍:http://code.google.com/p/guzz/wiki/TutorialHbmXml

增加对数据库保留字的支持:

在定义数据库列名时,可以用`(ESC下面的键)将列名引起来,避免字段名称与数据库保留字冲突。此功能与hibernate提供的处理保留字方法相同,但guzz只支持字段,不支持`表名`。

增加对Microsoft SQL Server的支持(未测试):

参考hibernate实现了一个SQL Server 2000 & 2005的dialect,不支持分页。没有测试过。Dialect实现类:org.guzz.dialect.MSSQLDialect

Guzz已经能够支持的数据库和数据类型请参看:
http://code.google.com/p/guzz/wiki/TutorialGuzzXml

其他:

1. 文档进行了大范围的补充和更新;

2. 修复了所有已经发现的bug。

下一版本计划:
 
    >增加对spring事务的兼容。

    >设计一些常见的服务,推广guzz基础服务理念。

 

本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

AI Hentai Generator

AI Hentai Generator

免費產生 AI 無盡。

熱門文章

R.E.P.O.能量晶體解釋及其做什麼(黃色晶體)
1 個月前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.最佳圖形設置
1 個月前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.如果您聽不到任何人,如何修復音頻
1 個月前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.聊天命令以及如何使用它們
1 個月前 By 尊渡假赌尊渡假赌尊渡假赌

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

AI新創集體跳槽OpenAI,Ilya出走後安全團隊重整旗鼓! AI新創集體跳槽OpenAI,Ilya出走後安全團隊重整旗鼓! Jun 08, 2024 pm 01:00 PM

上週,在內部的離職潮和外部的口誅筆伐之下,OpenAI可謂是內憂外患:-侵權寡姐引發全球熱議-員工簽署“霸王條款”被接連曝出-網友細數奧特曼“七宗罪」闢謠:根據Vox獲取的洩漏資訊和文件,OpenAI的高級領導層,包括Altman在內,非常了解這些股權回收條款,並且簽署了它們。除此之外,還有一個嚴峻而迫切的問題擺在OpenAI面前——AI安全。最近,五名與安全相關的員工離職,其中包括兩名最著名的員工,「超級對齊」團隊的解散讓OpenAI的安全問題再次被置於聚光燈下。 《財星》雜誌報道稱,OpenA

如何評估Java框架商業支援的性價比 如何評估Java框架商業支援的性價比 Jun 05, 2024 pm 05:25 PM

評估Java框架商業支援的性價比涉及以下步驟:確定所需的保障等級和服務等級協定(SLA)保證。研究支持團隊的經驗和專業知識。考慮附加服務,如昇級、故障排除和效能最佳化。權衡商業支援成本與風險緩解和提高效率。

70B模型秒出1000token,程式碼重寫超越GPT-4o,來自OpenAI投資的程式碼神器Cursor團隊 70B模型秒出1000token,程式碼重寫超越GPT-4o,來自OpenAI投資的程式碼神器Cursor團隊 Jun 13, 2024 pm 03:47 PM

70B模型,秒出1000token,换算成字符接近4000!研究人员将Llama3进行了微调并引入加速算法,和原生版本相比,速度足足快出了快了13倍!不仅是快,在代码重写任务上的表现甚至超越了GPT-4o。这项成果,来自爆火的AI编程神器Cursor背后团队anysphere,OpenAI也参与过投资。要知道在以快著称的推理加速框架Groq上,70BLlama3的推理速度也不过每秒300多token。Cursor这样的速度,可以说是实现了近乎即时的完整代码文件编辑。有人直呼好家伙,如果把Curs

PHP 框架的學習曲線與其他語言框架相比如何? PHP 框架的學習曲線與其他語言框架相比如何? Jun 06, 2024 pm 12:41 PM

PHP框架的學習曲線取決於語言熟練度、框架複雜性、文件品質和社群支援。與Python框架相比,PHP框架的學習曲線較高,而與Ruby框架相比,則較低。與Java框架相比,PHP框架的學習曲線中等,但入門時間較短。

PHP 框架的輕量級選項如何影響應用程式效能? PHP 框架的輕量級選項如何影響應用程式效能? Jun 06, 2024 am 10:53 AM

輕量級PHP框架透過小體積和低資源消耗提升應用程式效能。其特點包括:體積小,啟動快,記憶體佔用低提升響應速度和吞吐量,降低資源消耗實戰案例:SlimFramework創建RESTAPI,僅500KB,高響應性、高吞吐量

中國移動:人類正邁入第四次工業革命 正式公佈'三個計劃” 中國移動:人類正邁入第四次工業革命 正式公佈'三個計劃” Jun 27, 2024 am 10:29 AM

6月26日消息,在2024年世界行動通訊大會上海(MWC上海)開幕典禮上,中國移動董事長楊傑發表演說。他表示,當前,人類社會正邁入以資訊為主導、資訊和能量深度融合的第四次工業革命,即“數智化革命”,新質生產力加速形成。楊傑認為,從蒸汽機驅動的“機械化革命”,到電力、內燃機等驅動的“電氣化革命”,再到計算機和互聯網等驅動的“信息化革命”,每一輪工業革命都是以“信息和能量」為主線,帶來生產力發

魅族新機曝光 搭配 6000mAh 超大電池 魅族 22 發佈時間較晚 魅族新機曝光 搭配 6000mAh 超大電池 魅族 22 發佈時間較晚 Aug 07, 2024 pm 07:02 PM

8月6日,CNMO注意到,魅族新機再度曝光。根據爆料人士提供的訊息,魅族正在籌備一款中階機型,預計將配備6000mAh的超大容量電池,魅族22系列暫時沒有什麼動靜,預計將配備高通驍龍8Gen4行動平台,發佈時間可能稍晚。參考先前魅族新機,CNMO認為魅族22系列可能在2025年第一季發布。 1.魅族旗下新機通過國家品質認證,型號為M431Q。該機定位入門級,僅支援10W充電,價格預計在千元左右。該機疑似魅族子品牌魅藍旗下產品。 M431Q於今年5月與其他幾款機型一起在資料庫中被發現。此次透過國家質

如何為不同的應用場景選擇最佳的golang框架 如何為不同的應用場景選擇最佳的golang框架 Jun 05, 2024 pm 04:05 PM

根據應用場景選擇最佳Go框架:考慮應用類型、語言特性、效能需求、生態系統。常見Go框架:Gin(Web應用)、Echo(Web服務)、Fiber(高吞吐量)、gorm(ORM)、fasthttp(速度)。實戰案例:建構RESTAPI(Fiber),與資料庫互動(gorm)。選擇框架:效能關鍵選fasthttp,靈活Web應用選Gin/Echo,資料庫互動選gorm。

See all articles