Ami*_*mir 7 java orm hibernate hibernate-mapping
我有一个A级和B级
public class A{
int f1;
int f2;
int f2;
}
public class B extends A{
}
Run Code Online (Sandbox Code Playgroud)
我的问题是如何在映射到B的表中忽略一个字段,例如'f2'?
假设我对您的帖子所做的编辑获得批准,我将尝试回答。在下面的代码中,我使用 AttributeOverride 忽略了类 A 中的字段 f2,即 B 的超类。
@Entity
@AttributeOverride(name = "f2", column = @Column(name = "f2_col", insertable = false, updatable = false)
public class B extends A{
}
Run Code Online (Sandbox Code Playgroud)
如果您想进一步了解它,请参阅AttributeOverride。
AttributeOverride with insertable = false,updatable = false应该会有所帮助,但这也取决于您的继承策略。它只是帮助使映射字段从超类瞬态继承,以便其他一些子类可以使用它,但对于此特定子类,它将被忽略。