`
myreligion
  • 浏览: 204015 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

guzz框架设计目标和功能介绍(新闻帖子补充)

    博客分类:
  • guzz
阅读更多
功能目标概述:

guzz(谷子)是一套用来解决ORM、多数据源数据管理、以及通用数据处理的数据层框架。guzz可以看作是ibatis/hibernate的一个延伸。

ORM:guzz的ORM功能参考ibatis和hibernate的设计而来,同时具备ibatis的复杂查询在xml中配置以及简单的CRUD类似hibernate全部对象化管理的特点,适用于大部分数据库操作比较简单(关心进度和技术门槛),而某些性能攸关sql需要单独维护和调优的项目(关心性能)。

多数据源管理:多数据源管理是指guzz可以同时管理多组数据库,在执行查询时根据要查询的对象,自动分配到正确的数据库机器组执行查询操作。每一组可能包含主从,guzz自动分配主从库的操作。这样做到的效果是:在数据库设计时表的存储位置和主从设计完全对开发人员透明;并在以后需要扩展时,可以按照表将数据库分散到多组机器上,并行扩展。

多数据源管理还包括对异构数据的统一管理,如一些对象的某些属性并不保存在数据库里,如基于某种考虑需要先验证在读取或先查缓存再读数据库等。对于这种另类的方式,往往开发人员都是遇到一个特殊代码处理一个,非常混乱;而guzz可以通过自定义属性加载进行统一管理,在普通开发人员看来,并不需要了解数据的具体存储和读取过程。使用这些异构来源数据,就像使用普通的pojo一样简单。尤其对于后台开发与前端页面分开的开发团队,对前端提供的接口越越简单越统一,成本就越低(如产品部门与实施团队)。

通用数据处理:guzz将某些通用的数据和处理模型定义为服务(Service),如用户登录与认证、Session管理、IP地址到地理位置的映射、通过字符获取验证码图片等。这些服务包括数据和数据的运算处理,这些数据和数据运算guzz当作一类特殊的数据进行管理,用于多个项目之间实现共享。这些服务合在一起可以构成企业或项目的基础平台,越积累越多,guzz通过对这些服务的重复利用大幅度降低重复开发成本。

总结:guzz的目的并不仅仅是提供一种ORM映射,而是提供一套完整的数据层架构,用于解决项目中可能遇到的各种数据类型和数据处理策略,统一数据接口,简化项目架构设计。guzz提供的可配置的多数据源管理方式,相信每个大型系统都有自己的实现策略;guzz抽象出这些,对于新项目就不用再摸索了,尤其是多数据库组和主从分离更是直接面相未来。

-

1
0
分享到:
评论

相关推荐

    guzz: a empty sample project build20110323.zip

    首先,Guzz的设计目标是提供一种灵活、高效的解决方案,用于处理实时或批处理的数据流任务。它采用了面向任务编程模型,使得开发者可以专注于业务逻辑,而无需关心底层数据处理的复杂性。Guzz的核心组件包括任务调度...

    guzz的jar包

    guzz的jar包,工程下直接考过来的,可以直接使用

    guzz开发jar

    guzz是一套用来进行快速开发和高性能网站设计的java框架,通过ORM、多数据源数据管理、以及通用数据处理,为系统在数据层的设计提供一站式解决方案。用于替代或者补充hibernate或ibatis,并提供更多的大型系统架构...

    Guzz-crx插件

    【Guzz-crx插件】是一款专为Guzz平台设计的屏幕共享扩展程序,它使得用户能够在使用Guzz.io服务时轻松实现桌面屏幕共享功能。这一功能对于远程协作、在线会议、教育辅导以及团队沟通等场景具有极大的价值,极大地...

    guzz的「Guzz」-crx插件

    为Guzz启用屏幕共享。 此扩展程序允许www.guzz.io用户共享桌面屏幕 支持语言:English

    java框架方面面试题

    目前市面上有多个持久层框架,如Hibernate、MyBatis、TopLink、Guzz、jOOQ、Spring Data和ActiveJDBC等,它们各有特点,为开发者提供不同场景下的解决方案。 在Hibernate框架中,SessionFactory是一个重要的概念,...

    java框架面试题

    ### Java框架面试题详解 #### 一、对象关系映射(ORM)技术 **1. 什么是ORM?** 对象关系映射(Object-Relational Mapping,简称ORM)是一种编程技术,用于解决面向对象编程语言与关系型数据库之间的不兼容性问题。...

    Java面试题全集(下)

    另外,Spring是一个综合性的框架,其中包括了SpringMVC用于处理Web层逻辑,以及Spring框架本身用于提供轻量级的容器和依赖注入等企业级开发的功能。SpringData是一个基于Spring的数据访问和数据持久层的技术集合,...

    JAVA面试问题及答案.docx

    常见的持久层框架有Hibernate、MyBatis、TopLink、Guzz、jOOQ、Spring Data和ActiveJDBC等,它们都为开发者提供了便捷的数据持久化解决方案。 在Hibernate中,Session提供了多种操作数据库的方法,如load()和get()...

    JAVA面试问题及标准答案.docx

    常见的Java持久层框架有Hibernate、MyBatis、TopLink、Guzz、jOOQ、Spring Data和ActiveJDBC等,它们都提供了方便的数据操作和数据库访问功能。 在Hibernate中,SessionFactory是一个关键组件,它是线程安全的,...

    bicq代码

    2. **设计模式和架构**:源码通常遵循一定的设计原则和模式,如单例模式、工厂模式或MVC(模型-视图-控制器)架构。理解和分析这些模式有助于我们了解软件的组织结构。 3. **模块化编程**:BICQ的源码可能包含多个...

    Java面试题全集.docx

    - **Guzz**:轻量级的持久层框架。 - **ActiveJDBC**:面向对象的持久层框架,提供了类似于ActiveRecord的风格。 #### 三、SessionFactory与Session的安全性与使用场景 **知识点概述:** SessionFactory和...

    哀悼日变灰操作

    根据给定文件的信息,我们可以提炼出与“哀悼日变灰操作”相关的IT知识点,但首先需要澄清的是,文件内容似乎包含了一些不相关的代码片段和文档,这些内容涉及一个名为"Guzz"的全栈数据层解决方案框架,以及一系列与...

    InstallAnywhere 2008破解与自定义PlugIn陷阱经验分享

    NULL 博文链接:https://guzz.iteye.com/blog/256235

    轻松将一张大表分切到不同的机器中

    NULL 博文链接:https://guzz.iteye.com/blog/883225

    Laravel中使用阿里云OSS Composer包分享

    阿里云提供了基于命名空间的 V2 版 SDK,但是文档不是很完整,使用门槛比较高,于是我封装了一个 Composer 包:https://github.com/johnlui/AliyunOSS 安装 将以下内容增加到 composer.json: 复制代码 代码如下: ...

    php-sdk:用于连接到MultiSafepay REST API的默认PHP库

    相反,它使用客户端抽象和工厂抽象。这将使您可以灵活地选择要使用的任何。可以替换所有客户端,而没有任何副作用。如果您没有安装任何客户端实现,请使用以下命令: composer require guzzlehttp/guzzle如果您没有...

    bof:人类的HTTP客户端

    总结起来,Bof: 是用户友好的避免使用魔术字符串和数组进行配置:相反,它提供可由IDE自动完成的显式,类型化和文档化方法带有默认值:默认支持JSON,4xx和5xx响应抛出异常,默认情况下超时时间短符合PSR-7 未来的...

Global site tag (gtag.js) - Google Analytics