小编Rob*_*bin的帖子

最终方法是否阻止Hibernate为这样的实体创建代理?

Hibernate使用代理来启用延迟加载集合甚至单端关联.根据Hibernate的(3.6.5)参考文档(第21.1.3节,单端关联代理),如果Hibernate包含" 任何最终方法 ",则不能构造这样的代理.
我的问题是,这个限制是仅适用于持久字段的getter/setter还是实际上适用于实体类中的任何方法?那么,这样的方法是这样的:

public final String toString() {
   return this.getClass().getSimpleName() + id;
}
Run Code Online (Sandbox Code Playgroud)

真的阻止为这个实体创建(CGLIB或Javassist)代理吗?使用基于字段或属性访问是否重要?由于CGLIB被Javassist取代,这是否提供了这方面的更多功能?

我喜欢在我的实体层次结构中使用继承,因此需要定义一些最终方法,例如,在基类中,以防止子类覆盖这些方法.

提前致谢!

hibernate

6
推荐指数
1
解决办法
2301
查看次数

标签 统计

hibernate ×1