22、Java Data Objects (JDO) 全面解析

Java Data Objects (JDO) 全面解析

1. JDO 概述

Java Data Objects (JDO) 并非严格意义上的 O/R 映射规范,而是用于通用对象持久化,可覆盖任何后端数据存储,包括关系数据库和面向对象数据库。不过,大多数 JDO 实现主要针对关系数据库,因此可归类为 O/R 映射解决方案。

JDO 2.0 基于 JDO 1.0 构建,新增了两大重要特性:对分离对象的支持以及专门的 O/R 映射支持。在 Web 应用程序中,分离和重新附加对象是常见用例,而 JDO 1.0 API 无法妥善处理(与 iBATIS SQL Maps 和 Hibernate 等其他持久化解决方案不同)。访问关系数据库的 JDO 实现可支持多种可选的 O/R 映射特性,其中包括映射文件的通用元数据格式。

JDOQL 是一种遵循 ODMG 的 OQL 传统的纯对象查询语言,使用 Java 查询 API 和基于 Java 的条件字符串。在 JDO 2.0 中,查询功能将显著扩展,例如引入文本查询作为替代风格。许多当前的 JDO 实现已经支持查询扩展,主要用于访问关系数据库。

JDO 1.0 实现通过增强持久对象的字节码,使其实现 javax.jdo.PersistenceCapable 接口来进行更改检测。字节码增强器需要作为应用程序构建过程的一部分运行。增强后的类会在事务中通知 JDO StateManager 其实例字段的任何更改;JDO 始终处理实例字段,而不使用 JavaBean 属性的 setter 或 getter 方法。在事务提交时,JDO PersistenceManager 会将更改刷新到数据库,使内存状态与

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值