【发布时间】:2011-07-01 10:02:23
【问题描述】:
我有一个 JPA+Hibernate 实体,我需要通过 RMI 将它发送给不了解 Hibernate 的客户端,因此我制定了一种方法来“清除”Hibernate:
// shortened
public class Player {
private Set<Item> ownedItems;
public void makeSerializable() {
ownedItems = new HashSet<Item>(ownedItems);
}
}
但是,当我调用 makeSerializable 时,如果 ownedItems 尚未加载,Hibernate 将尝试延迟加载,这是我不想要的,这也是不可能的,因为存在 Hibernate 会话。相反,如果 ownedItems 未加载,我想将其设置为 null 或空集。
我该怎么做?
【问题讨论】:
标签: java hibernate serialization lazy-loading