阅读更多

14顶
0踩

企业架构

原创新闻 guzz1.2.9 build20101021发布

2010-10-25 08:30 by 正式记者 myreligion 评论(9) 有6061人浏览
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更新计划:

  • 支持将一张大表分切到多台机器上。
  • 其他


14
0
评论 共 9 条 请登录后发表评论
9 楼 hanmiao 2010-10-26 07:43
这个项目的文档结构合理 内容也比较详细 还提供一个空的工程样例 其实可以非常方便的试用一下
8 楼 keer2345 2010-10-25 21:59
初看了一下, 感觉配置是如此的复杂
7 楼 ivor_hu 2010-10-25 21:34
先关注下,有空尝试下,然后确认下到底好还是有问题。。。。或许以后还要使用下
6 楼 surpass 2010-10-25 20:42
这个要强顶的
5 楼 myreligion 2010-10-25 13:10
wendal 写道
支持一下, 看看如何在nutz中使用guzz,O(∩_∩)O哈哈~

呵呵,这样挺好。联合起来,才能做的更有效~~
4 楼 wendal 2010-10-25 12:44
支持一下, 看看如何在nutz中使用guzz,O(∩_∩)O哈哈~
3 楼 lpp333 2010-10-25 10:57
貌似不错,值得看下,同时让我想起了国内的那个Nutz的东东,虽然Nutz有两点,但要改进的地方也不少
2 楼 myreligion 2010-10-25 10:46
longware 写道
重复造轮子?

看清楚再说:)
1 楼 longware 2010-10-25 09:54
重复造轮子?

发表评论

您还没有登录,请您登录后再发表评论

相关推荐

  • Element-UI组件之表单Form

    Element-UI组件之表单FormRadio 单选框基础用法禁用状态单选框组按钮样式带有边框Checkbox 多选框基础用法禁用状态多选框组indeterminate 状态可选项目数量的限制按钮样式带有边框Input 输入框基础用法禁用状态可...

  • element组件---Form

    Form 表单 Radio 单选框 基础用法 备选项 备选项 export default { data () { return { radio: '1' }; } } 禁用状态 禁用">备选项 选中且禁用">备选项 export default { data ...

  • element组件------form

    (4)indeterminate 状态(indeterminate 属性用以表示 checkbox 的不确定状态,一般用于实现全选的效果) 全选 ;"> <el-checkbox v-for="city in cities" :label="city" :key="city">{{city}} const...

  • Element框架之Form

    indeterminate 属性用以表示 checkbox 的不确定状态,一般用于实现全选的效果 全选 ;"> <el-checkbox v-for="city in cities" :label="city" :key="city">{{city}} const cityOptions = ['上海', '...

  • element---组件--form

    form 一、Radio 单选框 基础用法 <template> <el-radio v-model="radio" label="1">备选项</el-radio> <el-radio v-model="radio" label="2">备选项</el-radio> </template&...

  • 主题:实用且不花哨的js代码大全

    事件源对象 event.srcElement.tagName event.srcElement.type 捕获释放 event.srcElement.setCapture(); event.srcElement.releaseCapture(); 事件按键 event.keyCode event.shiftKey event.altKey event.ctrlKey ...

  • 魔鬼字典 JavaScript 笔记 看不懂可以哭~~~

     显示: false /*“==”会将比较的双方自动类型转换成一样的类型再进行比较,“===”不会类型转换直接比较,int类型自然不等于string类型所以不相等*/  document.write(sNum!=tNum," "); 显示: false  ...

  • element-two

    Form radio 单选框 基础用法 禁用状态 单选框组 按钮样式 <template> <div> <el-radio-group v-model="radio1"> <el-radio-button label="上海"></el-radio-button> <el-...

  • 一些面试题

    另外,我个人通常并不使用标号这种方式,而是让外层的循环条件表达式的结果可以受到里层循环体代码的控制,例如,要在二维数组中查找到某个数字。 int arr[][] = {{1,2,3},{4,5,6,7},{9}}; boolean found...

  • 我的Java开发学习之旅------>Java经典面试题

    从享受生活的角度上来说:“程序员并不是一种最好的职业,我认为两种人可以做程序员,第一,你不做程序员,你就没有什么工作可做,或者说是即使有可以做的工作但是你非常不愿意去做;第二,你非常痴迷和爱好程序,...

  • 张孝祥正在整理Java就业面试题大全

    从享受生活的角度上来说:“程序员并不是一种最好的职业,我认为两种人可以做程序员,第一,你不做程序员,你就没有什么工作可做,或者说是即使有可以做的工作但是你非常不愿意去做;第二,你非常痴迷和爱好程序,...

  • WebWork2文档中文化计划 from表单

    注意的地方:struts.xml中使用通配符情况 result>/example/{1}.jspresult>此句的意思是,...第一句中星号指任意,而第二句中{1}指代第一句中星号指代的内容描述对于表单标签,分为两种标签:form标签本身,和所有来包装

  • WebWork-Action(动作)——用户注册实例

    每个请求的动作都对应于一个相应的Action,一个Action是一个独立的工作单元和控制命令,它必需要实现XWork里的Action接口,实现Action接口的execute()方法。Action接口的代码如下:   package ...

  • 给即将在今年九十月份找工作立志从事java开发的同学分享一下常见的面试题目!

    另外,我个人通常并不使用标号这种方式,而是让外层的循环条件表达式的结果可以受到里层循环体代码的控制,例如,要在二维数组中查找到某个数字。 int arr[][] = {{1,2,3},{4,5,6,7},{9}}; boolean found...

  • Java面试宝典2017版

    另外,我个人通常并不使用标号这种方式,而是让外层的循环条件表达式的结果可以受到里层循环体代码的控制,例如,要在二维数组中查找到某个数字。 1 int arr[][] = { { 1, 2, 3 }, { 4, 5, 6, 7 }, { 9 } }; ...

  • javascript

    js里的布尔值分别是 'true' 和 'false' ,都是小写的。 比较运算符: ==  :等于。值相等,类型可以不一样 !=  :不等于。只比较值 ===  :全等。值和类型都相等 !==  :不等于。比较值和类型 < 、...

  • 4、struts2_标签库

    :在标签的属性值被理解为字符串类型时,告诉执行环境%{}里的是OGNL表达式 2. 代码示例 [ 注意 ] :要使用 ognl 需要引入 ognl-3.0.6.jar和javassist-3.11.0.GA.jar包, 因为 struts2 的默认表达式语言是 ...

  • element组件---表单组件

    单选框不可用的状态。 禁用">备选项 选中且禁用">备选项 export default { data () { return { radio: '选中且禁用' }; } } 单选框组 适用于在多个互斥的选项中选择的场景 备选项 ...

  • Java经典面试题

    从享受生活的角度上来说:“程序员并不是一种最好的职业,我认为两种人可以做程序员,第一,你不做程序员,你就没有什么工作可做,或者说是即使有可以做的工作但是你非常不愿意去做;第二,你非常痴迷和爱好程序,...

  • Python常用库大全

    n=r.href:"SCRIPT"==r.tagName&&(r.defer||(n=r.src)),n){var a=ct.getEntriesByName(n);if(1==a.length){var i=a[0].responseEnd+e.navigationStart;i>t&&(t=i)}}}),t-=e.navigationStart,G.firstPaint=Math.round...

Global site tag (gtag.js) - Google Analytics