我有以下一组类(class)
@Embeddable
public class SharedClass {
...
private String legacyField;
...
}
@Entity
public class LongStandingEntity {
...
private SharedClass sharedClass;
...
}
其中legacyfield
在较旧的对象中存储一些过时的数据,但不会为新对象收集这些数据。但是我确实需要能够继续访问旧数据。
我正在创建一个也使用 SharedClass
的新实体
@Entity
public class NewEntity {
...
private SharedClass sharedClass;
...
}
它不需要 legacyField
,我希望避免在数据库中为其添加列,同时保持映射对 LongStandingEntity
有效。
这可以通过 JPA 注释实现吗?
最佳答案
我不记得有什么特定的注释可以帮助您解决这个问题。尽管如此,我还是愿意针对这种情况采取设计方法。如果您有仅属于某个类的字段,请将它们分隔在另一个仅与旧数据关联的嵌入类中。
对我来说,这似乎是一种更干净的方法,只是为了让实体清晰地区分。
关于java - 使可嵌入类的字段从 JPA 中的嵌入类 transient 化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12644626/