写点什么

简化持久性实体的传递

  • 2009-05-11
  • 本文字数:801 字

    阅读完需:约 3 分钟

Gilead 旨在实现

把持久性实体简便地传送到 JVM 环境外。

Gilead 的全称是Generic Light Entity Adapter,之前曾叫做 Hibernate4GWT 。随着开发团队开始支持其他一些框架,项目于是修改成当前的名字,

由于 Gilead 目前可以处理的前端技术不单单 GWT 一个,而且还计划支持 Hibernate 以外的 JPA 实现,所以,我们换了一个含义更宽泛的名字。

创建 Gilead 项目的主要目的是减轻人们把持久性实体传递到其他系统或者其他技术前端时遇到的痛苦。为什么这个过程那么棘手呢?通常是由于持久化框架在编译期或者运行期修改类的定义,添加某些所需信息以减少持久化实体时的麻烦。如此一来,当这些修改了的对象传送到 JVM 外面以后,就会发生一些奇怪的事情,比如说接收方甚至可能会抛出“NoClassDefFoundError”、“ClassCastException”之类的错误。

针对这种情况,Gilead 采取了“克隆-合并”(clone-merge)策略。对象从服务器发送出来的时候,本身会被克隆,

克隆操作会根据持久性实体创建普通实例,这个实例既不包含代理,也不包含带持久化特性的集合。

当对象返回给服务器时,Gilead 可以以下面三种“模式”中的任一种来合并返回的对象。

  1. 无状态:对象类型必须继承自 LightEntity ,或者实现 ILightEntity 接口,这样持久化信息才会被保存在克隆出来的对象上面(服务器上不保留相关信息)。
  2. 有状态:持久化信息是保存在 HTTP 会话里面。
  3. 动态代理:这也是一种无状态模式,尚处试验阶段。适用于无法修改已有遗留代码来满足无状态模式的情况。

目前,Gilead 的版本是 1.2.2,可以对采用 Hibernate 作为 JPA 实现框架的应用系统提供可靠的克隆 / 合并操作。同时,Gilead 对包括 GWT Flex (使用 BlazeDS 数据库)在内的前端技术提供成熟的适配器。

Gilead 的下一个版本 1.3,计划提供基于 XML/Web Services 技术的适配器,支持 OpenJPA(EclipseLink 将来也会纳入支持范围)以及其他一些改进。

查看英文原文 Easy Persistent Entity Transfers

2009-05-11 15:542051
用户头像

发布了 76 篇内容, 共 25.3 次阅读, 收获喜欢 3 次。

关注

评论

发布
暂无评论
发现更多内容

首期"源规律"开源公益课程正式上线

开放原子开源基金会

开源 合规 法律法规

让数据管理由繁至简的低代码开发平台

力软低代码开发平台

接口测试|postman发送POST请求

霍格沃兹测试开发学社

Postman

接口测试|Postman环境变量&全局变量设置

霍格沃兹测试开发学社

Postman

安全文件传输的重要性及其对企业的影响

镭速

文件传输

飞书深诺数仓低代码方案实战

飞书深诺技术团队

ThreadLocal实践案例两则

FunTester

一款好用的低代码开发平台是什么样的?

高端章鱼哥

低代码 低代码平台 JNPF

开放原子开源基金会TOC(技术监督委员会)第七十九次全体会议

开放原子开源基金会

开源

校源行 | 2023年开放原子校源行开源大使培训圆满结束,考试时间正式公布

开放原子开源基金会

开源

saas堡垒机定义以及优势简单说明-行云管家

行云管家

SaaS 堡垒机 saas堡垒机

GPTCache 悬赏令!寻找最佳捉虫猎手,豪华赏格等你来拿!

Zilliz

Zilliz AIGC ChatGPT LLM gptcache

校源行|开放原子开源社团(山东大学)授牌仪式隆重举行

开放原子开源基金会

开源 山东大学

使用低代码平台提高生产力

树上有只程序猿

低代码 生产力 全栈开发 JNPF

时序数据高基问题揭秘:根因分析与解决之道

Greptime 格睿科技

时序数据库 云原生数据库 国产时序数据库 高基问题

接口测试|Postman持久化保存

霍格沃兹测试开发学社

Postman

喜讯! WorkPlus入选中国信通院数字产品“2023全景图”!

BeeWorks

定档!WAVE SUMMIT 2023@全球开发者,8月16日北京见!

飞桨PaddlePaddle

人工智能 百度 paddle 飞桨 百度飞桨

利用文心千帆打造一个属于自己的小师爷

为自己带盐

大语言模型 文心千帆

DLRover 在 K8s 上千卡级大模型训练稳定性保障的技术实践

AI Infra

人工智能 开源 AI 开发者 kubernetes 运维

开放原子开源基金会代表团出席Open Source Congress并参与专题研讨

开放原子开源基金会

马上解锁 StarRocks 存算分离,降本增效无需等!

StarRocks

数据库 大数据 数据仓库 存算分离

平台工程社区:与全球 2w+ 早期实践者同行

杨振涛

DevOps 云原生 社区 平台工程 平台工程师

基于低代码平台快速搭建应用

互联网工科生

低代码 低代码开发 JNPF java低代码开发平台

接口测试|Postman发送带参数的Get请求

霍格沃兹测试开发学社

接口测试|postman模拟请求头&界面的响应信息

霍格沃兹测试开发学社

Postman

如何解决大量小文件传输慢的问题

镭速

小文件传输

【十万个等保小知识】等保测评报告是在等保整改之后发吗?

行云管家

等保 等级保护 等保测评 等保整改

接口测试|Postman设置断言

霍格沃兹测试开发学社

Postman

单元测试|unittest生成测试报告

霍格沃兹测试开发学社

Python

简化持久性实体的传递_Java_Craig Wickesser_InfoQ精选文章