我必须加强&扩展使用JPA / Hibernate构建其持久层的现有应用程序。持久层的核心实体需要保持不变,即没有更改POJO的选项。但是,将通过添加新列来修改表结构。
我正在考虑扩展现有的POJO并实现继承映射。这是最好的方法吗?是否还有其他方法(可能更好)来处理此要求?
答案 0 :(得分:0)
如果目标表中没有鉴别器列,那么我猜你仍然可以使用(非JPA兼容的)Hibernate注释@DiscriminatorFormula来完成它。
http://docs.jboss.org/hibernate/annotations/3.5/reference/en/html_single/
JPA规范还允许通过XML映射文件覆盖/禁用JPA注释处理。我还没有真正使用过这个功能,但是请参阅以下讨论,这些讨论似乎表明您可以通过此机制将现有实体转换为MappedSuperclass。