我有一个像这样的实体设置:
@Entity
@Table(name = "APP", uniqueConstraints = @UniqueConstraint(columnNames = "APP_KEY"))
public class Application implements java.io.Serializable {
...
@OneToMany(fetch = FetchType.LAZY)
@JoinColumn(name = "application_Id", referencedColumnName = "application_Id")
private Set<Document> documents = new HashSet<Document>(0);
}
现在,在某些情况下,我不希望返回文档列表。但是,当我序列化这个对象时,将调用“getDocuments()”方法。
此时不会有活动的交易,所以我不想要其中一个“无会话”错误。我只是想忽略它并让getDocuments()方法返回空,不抛出异常而不是尝试获取更多数据。
答案 0 :(得分:0)
看看FetchGroup功能参考:
看一下jpql fetch join的...
Select e from Employee e join fetch e.phones p where p.areaCode = '613'
这里有一个类似的问题:How to properly express JPQL "join fetch" with "where" clause as JPA 2 CriteriaQuery?
答案 1 :(得分:0)
我不知道您的序列化设置,但是: