写点什么

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:051376
用户头像

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

关注

评论

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

2020亚马逊“黑五”再次成为亚马逊史上最大的年终全球狂欢

爱极客侠

《穿越数据的迷宫》笔记:第 2章 数据管理的挑战

方志

数据治理

架构设计之路-1

5加3彩票

架构师 代码规范

AOT慈善币系统软件开发|AOT慈善币APP开发

系统开发 现成系统

面对日益严峻的网络安全问题,CDN可以做什么?

阿里云Edge Plus

江西吉安:一个上了区块链柚子的真情告白

CECBC

区块链 蜜柚

构师训练营 - 第六周课后练习

joshuamai

LeetCode题解:51. N 皇后,回溯+哈希表,JavaScript,详细注释

Lee Chen

算法 大前端 LeetCode

《穿越数据的迷宫》笔记:第 3 章 DAMA的数据管理原则

方志

数据治理

Spring 源码学习 05:BeanDefinition 概念及其实现

程序员小航

spring 源码 源码阅读 BeanDefinition

极客大学 - 架构师训练营 第十一周总结

9527

智慧公安扫码一键定位报警系统搭建

t13823115967

智慧公安 智慧公安扫码 一键定位报警系统搭建

区块链商品追溯平台开发,区块链防伪追溯系统搭建

13530558032

年轻人会用C++实现一种协程吗?

ShenDu_Linux

Linux 程序员 多线程 协程 什么是多线程

“黑五”前夜的裁员:无接触配送大趋势为什么都带不动亚马逊无人机?

脑极体

Spring AOP核心类解析,这是最全的一篇了!!

冰河

spring aop ioc 注解驱动 切面编程

区块链电子发票应用落地,区块链电子发票系统开发

13530558032

构师训练营 - 第六周学习总结

joshuamai

我理解的信息化、数字化、数智化

boshi

数字化 数据智能 信息化

周小川深度解读:DC/EP和数字人民币e-CNY

CECBC

数字人民币

当千行万业的轨道,换上智能云网的高铁

脑极体

JVM调优不知道怎么回答,阿里总结四大模块,学不会就背过来

996小迁

Java 架构 面试 调优

重点人员管控系统开发,可视化数据分析搭建

t13823115967

重点人员管控系统开发 智慧公安 可视化数据分析搭建

区块链版权应用搭建,区块链版权存证平台开发

13530558032

什么是KMP算法(详解)

赖猫

c++ Linux KMP

一万字详解 Redis Cluster Gossip 协议

程序员历小冰

redis 分布式 redis cluster

Spock单元测试框架实战指南一Spock是什么?它和JUnit有什么区别?

Java老k

Java 单元测试 JUnit Mock spock

自己搭建服务器需要多少钱?

德胜网络-阳

线程模型Reactor/Proactor的区别

Linux服务器开发

reactor 线程 多线程 Linux服务器开发 Proactor

甲方日常 62

句子

工作 随笔杂谈 日常

谁能阻止世纪互联星光?2020年第11期北京机房网络质量评测数据排行榜发布

博睿数据

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