繁体   English   中英

如何使用注释继承Hibernate过滤器?

[英]How can I inherit Hibernate filters with annotations?

我正在尝试使用注释设置Hibernate过滤器。 我想在基类中指定它并使所有子类使用它但是每当我尝试启用它时,Hibernate都无法找到过滤器。 是否有可能继承过滤器注释?

从3.5.0开始,@MappedSuperclass至少可以实现。 不确定这有助于你......见: HHH-4332

您是直接使用休眠过滤器,还是为了自己的目的扩展休眠过滤器? Java中没有默认继承注释,但如果您自己编写注释,并且我假设hibernate没有在注释上执行此操作,则可以在注释上指定@Inherited元注释以使其继承。 但这仅适用于类型级别注释。 此外, 有些人编写注释管理器来模拟完全继承。 您可以执行类似的操作,或者扩展休眠机制,或者编写一个预处理器来添加应该继承的注释。

John Ellinwood写的正是如此。 这就是为什么需要在所有子类上指定@Filter原因,至少在Hibernate Annotations 3.4.0-GA中是这样。

此外,虽然这可能并不明显,但如果您希望这些集合也易于过滤,那么您将需要在该类的所有映射集合上使用相同的注释。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM