【发布时间】:2011-07-13 03:36:29
【问题描述】:
我有这个“模式”的“发布”实体/表:
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
int id;
@GeneratedValue(strategy = GenerationType.AUTO)
private Integer postId;
private Integer revisionId;
private Boolean isCurrentRevision;
因此,表格包含帖子,每个帖子都有多个修订版,但只有其中一个(对于每个帖子)是最新的。
现在,假设我想保留现有帖子的另一个修订版(即更新帖子):
我需要为此 postId 找到现有的最高修订 ID,将其递增并将其设置为修订 ID。此外,这是新的当前版本,因此应相应标记,但以前的当前版本也应取消标记。
但是我该怎么做呢?我觉得这真的应该是实体实现的一部分,但另一方面我需要 EntityManager 来做到这一点。但是我找不到注入 EntityManager 实例的方法(保证存在)。
有可能吗?你如何实现这样的场景?谢谢!
【问题讨论】:
标签: java jpa jpa-2.0 eclipselink