2

我有实体类,这些实体类实现了它们自己的 equals() 函数,它只是比较类的 Id。可悲的是,在 Hibernate 代理上调用 equals() 会对其进行初始化,这在我的情况下完全没用。

我使用 javassist 作为代理提供者。有没有办法修改代理生成代码以在 equals 调用期间不加载实体,而是为我做其他事情?我可以在 Hibernate 中插入自定义代理提供程序吗?

请不要开始讨论 equals 在 Hibernate 中应该如何表现,这已经很远了,关于这个话题有不同的意见,我已经知道了,这不是问题的一部分:)。

4

1 回答 1

1

如果您覆盖 hibernate.jar 中的类并提供您自己的 BasicLazyInitializer 实现,则它可以工作。

于 2011-03-22T06:57:42.180 回答