我们需要为我们的实体持久保存到单独的表历史记录中。我查看了Envers,但REVINFO表是改造现有客户和性能的问题。
我正在考虑一种方法,我们拥有每个或我们的具体"使用@MappedSuperclass注释的entites(比如CUSTOMER)....数据将保存到CUSTOMER表中。我们将实体子类Customer类称为" CustomerHistory"并添加我们需要的字段(historyId(主键),开始时间,结束时间)将保留到CUSTOMER_ADDRESS表。
这会有用吗? JPA处理2个表中的主键?
感谢。
答案 0 :(得分:0)
如果有人想到这个......似乎不是一个有效的选择。这是我收到的堆栈跟踪。
引起:org.springframework.beans.factory.BeanCreationException:创建名称为' entityManagerFactory'的bean时出错在类路径资源中定义[org / springframework / boot / autoconfigure / orm / jpa / HibernateJpaAutoConfiguration.class]:调用init方法失败;嵌套异常是java.lang.ClassCastException:org.hibernate.mapping.SingleTableSubclass无法强制转换为org.hibernate.mapping.RootClass