好吧,通过历史会话,我们可以在特定时间查询对象。但我需要的是查询该对象的所有版本..
文档指出我们不能这样做..但有没有人为此行为定制eclipselink?..
编辑:好吧,这个问题已在eclipselink论坛上提出。似乎没有人对这个问题感兴趣。
编辑: 我已经请求了增强请求。如果您想要此增强功能,请投票..以下是链接:https://bugs.eclipse.org/bugs/show_bug.cgi?id=333725
答案 0 :(得分:0)
以下是eclipselink论坛的答案..
似乎没有一种简单的方法 去做这个。请记录增强功能 请求并投票支持。
您可以使用本机SQL查询 这个。你需要设置 “eclipselink.maintain-cache”=“true”on 查询。
您还可以将单独的类映射到 历史表,包括 对象中的开始和结束日期,以及 startDate作为Id的一部分。这个 真的是你想要做的, 如同查询原班级一样 不会让你访问开始和 结束日期。你可以用一个 MappedSuperclass并拥有当前版本 和历史类子类和它 使用不同的表。