guzz是一套用来解决ORM、多数据源管理、以及通用数据计算的数据层框架,为系统在数据层的设计提供一站式解决方案。guzz可以看作是 ibatis/hibernate的一大的延伸,并可以取代这2个东西。
guzz主要功能与特点:
- 现代大规模系统设计,技术上吸收了ibatis/hibernate的优点
- 支持像hibernate一样的对象化持久、映射和方便的增删改查
- 支持像ibatis一样,让dba参与sql设计的复杂数据库操作和优化
- 支持在线加载与调试SQL。按照应用策略,从文件/数据库/Web Service等途径,动态提取与使用SQL语句(Dynamic SQL)
- 支持应用程序使用大量的数据库和主从读写分离
- 支持超越范式的特殊关联、非结构化数据等异构资源的统一管理
- 支持数据表在多组机器间水平分布(Shard),并自动维护多组机器之间的分布式事务
- 支持1张表按照业务规则分切成多张小表(Shadow),并支持每张小表拥有自己特殊的属性字段(Custom)
- 支持组件化服务(Service),以及服务间依赖,帮助构建企业/项目实施基础平台
- 提供面向对象的数据库读取标签(JSP Taglib),加快页面展示层的快速变更、开发与部署
- 支持配置管理服务器,可以使用一套软件系统对所有应用程序的配置进行统一管理
项目地址:http://code.google.com/p/guzz/
文档:http://code.google.com/p/guzz/wiki/WikiHomePage?tm=6
下载:http://code.google.com/p/guzz/downloads/list
guzz 1.2.9 build20101021 更新介绍:
增强服务,支持服务间相互依赖
服务在配置时,通过dependsOn属性设置依赖的服务,guzz进行IOC注入。例如您将一套通信协议设计成一个通信服务,当其他服务需要进行通信时,直接依赖通信服务完成远程调用或数据传送。
为了说明服务的价值与使用方式,guzz设计了一些常用的基础服务,供测试或者直接使用。使用时,一般只需要几行代码,就可以完成本来的一个大模块。限于篇幅,请参看:http://www.guzzservices.com/category/developer-guide/
guzzservices.com中目前提供的服务包括:可以主动推送修改后配置项的系统配置管理,敏感词管理与文字过滤服务,以及通过IP查询地理位置服务。后续还将增加一些。试一下,就能发现guzz服务带来的开发与维护优势。
服务以及注入文档:http://code.google.com/p/guzz/wiki/TutorialService?wl=zh-Hans#配置服务:
新增random主键生成器(原创):
random主键用于解决guid和uuid产生的主键在较短时间内比较类似,虽然不会重复,但容易被猜出来的问题。对于某些应用场景,如对外API的key,需要确保无法被猜出,这时就需要random主键策略。
random主键生成一段随机字符串,由数字和小写字母组成。随机串长度默认为32,可以通过length属性进行调整。
其他:
1. 修复了一些bug;
2. 完成英文版文档翻译。
下一个build更新计划:
|