gpt4 book ai didi

java - JPA 2 持久性上下文规范

转载 作者:行者123 更新时间:2023-11-30 11:39:23 24 4
gpt4 key购买 nike

我目前正在研究官方 JPA 2 最终规范。是the following statement包含在规范中的任何地方?

The Entity Manager guarantees that within a single Persistence Context, for any particular database row, there will be only one object instance.

要么我没有清楚地理解规范,要么就是找不到证明引用的语句是规范的一部分的部分。

最佳答案

不,规范不提供此类保证。但在我看来,这是隐含的假设。

实际上,有时同一个表会映射到两个不同的实体。其中之一被视为只读实体。例如,只读实体可用于报告目的,并且作为优化仅包含其他实体中的字段子集。例如,这可以按如下方式完成:

@Entity
public class EntityA {
@Id private Integer id;
@Lob
byte[] tooHeavyToLoadAlways;
}

@Entity
@Table(name="EntityA")
public class EntityALightWeight {
@Id private Integer id;
}

对于 JPA,这两个实体之间没有连接,因此请注意只有第一个实体被修改而第二个实体被刷新是应用程序的责任。因此应谨慎使用,因为 EntityALightWeight 可以从数据库中刷新,但绝不会包含在同一事务中对 EntityA 所做的更改。

关于java - JPA 2 持久性上下文规范,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13305400/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com