写点什么

OpenJPA 1.0:完全符合 JPA 1.0 规范的企业级 O/R 映射

  • 2007-09-13
  • 本文字数:853 字

    阅读完需:约 3 分钟

Apache OpenJPA Java Persistence API (JPA)的一个开源实现,最近发布了1.0.0 版本。InfoQ 与OpenJPA 项目领导Patrick Linskey 交流后得到了更多关于该版本的信息。

Linskey 讲述了 OpenJPA 中一些重要的特性与扩展:

  • 符合 JPA 1.0 规范——完全实现了 JPA 1.0 规范,其目标主要是关系型数据库管理系统(RDMBS)
  • 企业级——包含了众多如内存管理,规模构建,集群构建等企业级特性
  • 扩展 Quality of Service(QoS)——对集群操作进行缓存,对访问模式进行控制和优化,并以轻量的内存需求来处理大规模的事务
  • 扩展高级数据库特性——支持 Savepoint 和悲观锁
  • 改进 JPA 契约——定义严谨并实用的回滚行为,扩充 @GeneratedValue 到所有的数值字段类型,加强延迟加载 / 脏检查跟踪的能力
  • 支持 JAXB所管理的域——这些域可直接映射到数据库中的 XML 列类型,并通过某些 OpenJPA 查询语句直接查询 XML

Linskey 同时也提到 BEA Kodo 是基于 OpenJPA 开发的,虽然他们并没追随相似的发布周期——Kodo 倾向于与 BEA WebLogic 应用服务器的发布同步。

BEA WebLogic 通过 Kodo 项目使用 OpenJPA 作为它的 JPA 实现,除此之外, Apache Geronimo 最近发布的2.0 版本也同样通过 Apache OpenEJB 项目使用了 OpenJPA。还有其它好几个项目也用到了OpenJPA,但Linskey 把 Compass 项目的领导 Shay Banon 看作是集成 Compass 与 OpenJPA 的关键所在。Linskey 还谈及了关于 OpenJPA 的未来计划:

我们最关心的是 JPA 小组正在起步中的 JPA2 规范。虽然 JPA 1.0 规范包含了大多数用户构建应用时所需的特性,但仍有一些 OR 映射的重要领域未覆盖到。我们会重点关注下一个 JPA 版本中这些方面的覆盖情况。我们从生产立场出发, 围绕频繁写入环境中缓存的优化、以及在多核环境运行的高并行应用的进一步改进,提出了多个观点。我们也在支持用可替换的编程模型访问 OpenJPA 方面做了一连串工作,如支持 SCA 的 Service Data Objects 规范,或其它的动态应用接口。

更多关于 OpenJPA 的详情,请浏览 InfoQ 的近作,内有更详细的 Patrick Linskey 就 OpenJPA 和 JPA 规范的讨论。

2007-09-13 11:051427
用户头像

发布了 27 篇内容, 共 11.1 次阅读, 收获喜欢 15 次。

关注

评论

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

熬夜整理最近前端面试知识点

loveX001

JavaScript

Spring JPA 查询的时候提示错 org.hibernate.TransientObjectException

HoneyMoose

西安交大谢涛:云上做实验,让计算机教学实现质的飞跃

Lily

Java中的重载和重写的区别

共饮一杯无

Java 10月月更 重载重写

Docker load 大镜像(17G) 报错no space left on device

琦彦

Docker 10月月更 Base Device Size

搭建组件库最小原型(支线)

小鑫同学

前端 Node 10月月更

专访北大荆琦:产业前沿进课堂,通过产学合作培养开源贡献者

Lily

20221013

留白的艺术

构建工具Gulp-lesson4

小鑫同学

前端 Node 10月月更

构建工具Gulp-lesson5

小鑫同学

前端 Node 10月月更

从URL输入到页面展现到底发生什么?

loveX001

JavaScript

Java数组详解

共饮一杯无

Java 数组 10月月更

【Ajv】JSON Schema Validator

小鑫同学

前端 Node 10月月更

如何搭建组件库的最小原型

小鑫同学

前端 Node 10月月更

Vue2.x组件间通信汇总表

小鑫同学

前端 Node 10月月更

Docker下Nacos持久化配置

程序员欣宸

Docker Spring Cloud nacos 10月月更

HashSet源码全方位解读

知识浅谈

10月月更

通过linux-PAM实现禁止root用户登陆的方法

京东科技开发者

数据库 Linux 公有云 云主机 linux-PAM

正确发送统计数据到服务器

小鑫同学

前端 Node 10月月更

打包 Composition API、Vue3

小鑫同学

前端 Node 10月月更

Qt | 实现动态创建多个Tab页,页中动态创建多个子部件

YOLO.

qt 10月月更 C++

SAP UI5 OData谣言粉碎机:极短时间内发送两个 Odata request,前一个会自动被 cancel 掉吗

汪子熙

JavaScript 前端开发 SAP UI5 ui5 10月月更

技术分享 | 接口自动化如何处理 Form 请求?

霍格沃兹测试开发学社

【Java深入学习】线程状态

Geek_65222d

10月月更

【愚公系列】2022年10月 Go教学课程 027-深拷贝和浅拷贝

愚公搬代码

10月月更

标签与指标到底有什么区别?

雨果

标签 指标

QtCreator配置protobuf环境

中国好公民st

qt Qt Creator 10月月更

Qt | 线程 QThread

YOLO.

c++ qt 10月月更

谈谈前端性能优化-面试版

loveX001

JavaScript

Java基础(四)| 数组及内存分配详解

timerring

Java 数组 内存分配 10月月更

编程语言中 null 引用的十亿美元错误趣谈

汪子熙

Java JavaScript SAP abap 10月月更

OpenJPA 1.0:完全符合JPA 1.0规范的企业级O/R映射_Java_Ryan Slobojan_InfoQ精选文章