1

任何人都可以帮助解决上述情况吗?

我有一个 entity A,它包含对另一个实体的引用B(映射为OneToOne关系)。当我在 entity 上调用 mergeA并返回此持久对象时,实体B(在单步调试和调试时)显示为 Javassist 对象,而不是实际的实体对象。这使得调试非常混乱......

这是我可以关闭的选项吗?它对我有任何好处吗?我已经检查了 Manning 的 Java Persistence with Hibernate 一书 - 它没有提到 Javassist ......

干杯

4

1 回答 1

2

我们得到_javaassist 对象(代理对象),如果它在会话关闭后被初始化为其相关对象。

在您的情况下,尝试打开一个新会话,开始事务,然后使用session.save()保存对象来保存对象。然后session.flush()提交事务。

它将解决您的问题。

如果它不起作用,我建议Hibernate.initialize(a.getB())在冲洗会话之前。

它肯定会返回实际对象。

于 2013-09-26T13:08:51.057 回答