Hibernate覆盖@transient

Ido*_*ash 7 hibernate jpa

我有一个映射的超类,它有一个字段,我的数据库中的一些表共享.

我希望用@Transient注释这个字段,这样大多数实体都会忽略它,但de- @ Transient或un- @ Transient它在子实体上.

这可能吗?

谢谢,Idob

Jas*_*hal 1

您也许可以使用鉴别器模式

http://docs.jboss.org/hibernate/orm/3.3/reference/en-US/html/mapping.html

您必须设置一个父超类,然后对其进行子类化,例如

ClassWithSharedFields
ClassExtensionThatUpdatesCertainFields
ClassExtensionThatReadsCertainFields
Run Code Online (Sandbox Code Playgroud)

然后,ClassExtensionThatReadsCertainFields可以将您不打算更新的字段指定为只读。

这可能是一个有点模糊的建议,因此如果您需要更具体的帮助,可以提供一些更具体的示例来说明您的域类需要如何与数据库相关的行为。