一個查詢聯想我是很新,Hibernate Search的項目,所以任何建議將appriciated。假設我有一個實體美孚和實體一個一對多的關係連接酒吧。映射可能如下所示:取實體使用Hibernate Search的
@Entity
@Table(name="foos")
@Indexed
public class Foo {
@Id
private Long id;
@IndexedEmbedded
@ManyToOne(fetch = FetchType.LAZY)
@JoinColumn(name = "bar_id")
private Bar bar;
//getters, setters, etc.
}
@Entity
@Table(name = "bars")
public class Bar {
@Id
private Long id;
@OneToMany(fetch = FetchType.LAZY, mappedBy="bar")
private Set<Foo> fooSet;
//getters, setters, etc.
}
現在,當我試圖使用Lucene查詢美孚表/ Hibernate Search的DSL,我得到的結果是這樣的查詢:
select this_ from foos this_ where this_.id in (id collection fetched from lucene)
所以我酒吧實體被由於懶惰的獲取類型,由hibernate代理。我的問題是有辦法使用一個查詢獲取富和酒吧(使用連接或其他)?
非常非常好答案!什麼是有趣的hibernate獲取他可以從索引(Id的),並在Id的他獲取協會什麼您定義。有趣。 – Gazeciarz
我能夠在hibernate 4中使用setCriteriaQuery,但在hibernate中5個標準已被棄用。 我真的不知道如何結合全文查詢和setFetchMode – SG87