WEB开发网
开发学院软件开发Java 用 Slice 扩展 OpenJPA 应用程序 阅读

用 Slice 扩展 OpenJPA 应用程序

 2010-10-09 08:13:28 来源:WEB开发网   
核心提示: 创建新实例通过实例的主 ID 找到实例通过基于字符串或动态构建的查询选择实例划分事务边界一个持久上下文管理这些实例,应用程序对持久状态的任何变化均由 JPA 提供者监视,用 Slice 扩展 OpenJPA 应用程序(2),在事务完成或上下文清仓时,会自动更新有关的数据库记录,正式来讲,对数据集

创建新实例

通过实例的主 ID 找到实例

通过基于字符串或动态构建的查询选择实例

划分事务边界

一个持久上下文管理这些实例,应用程序对持久状态的任何变化均由 JPA 提供者监视。在事务完成或上下文清仓时,会自动更新有关的数据库记录。

总之,JPA 所倡导的是一种应用程序编程模型,其中持久性操作和查询涉及 Java 对象模型,而提供者负责将对象模型映射到数据库模式:一个 Java 类转变成一个或多个数据库表,Java 类型的持久性属性转变为数据库列、关系变成外键等;并且,持久性操作也变成了 SQL 语句:Java 的 new() 操作符映射为一个或多个 INSERT,find() 映射为 SELECT,持久实例的 setter 方法变为数据库的一个 UPDATE 语句。

slice 与 Slice

在本文中,您将看到小写的 slice 以及作为专有名词的 Slice。我们将使用 slice(小写)代表数据库子集,用 Slice(专有名词)表示这个运行时 OpenJPA 模块。

核心的 JPA 规范是基于这样一个隐式且严格的假设,即持久对象和操作被映射到一个关系数据库。每个持久单元均连接到一个单一数据库,并且管里的持久性对象状态也存储到同一个数据库。Slice 完全打破了单一数据库的这个假设。Slice 允许相同的 JPA 应用程序的执行,而同时底层的数据存储环境也已经从一个超大型的数据库变成了一组被水平分区的数据库。存储了整个数据集的子集的这些物理数据库被称为是分区、碎片或片。

正式来讲,对数据集 D 的 P(D) 进行水平 分区 或划分就是将 D 分解成相互不相交的 N 个集 Di 且:

D = D1 ∪ D2 ∪ ⋯ ∪ Dn,当 i ≠ j时,Di ∩ Dn = ∅ 

上一页  1 2 3 4 5 6 7  下一页

Tags:Slice 扩展 OpenJPA

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接