我是hibernate的新手,所以我非常肯定你們中的一些人會被這個問題所逗樂。它一直讓我瘋狂。這是一個hibernate查詢問題。休眠查詢兩個表格
我有兩個表,假設一個是出口,一個是傳單
出口 - 出口名稱,出口地址,MERCHANTNAME
傳單 - flyerId,flyerName,MERCHANTNAME
所以傳單屬於商人和商人有很多網點等,
使用Hibernate,得到一個簡單的查詢,希望從使用MERCHANTNAME出口表中獲取不同的網點,我使用的代碼:
public List<Outlet> getDealOutlet(@PathParam("merchant") String merchant) {
some code here....
outletsList = session.createQuery("from Outlet as outlet where outlet.merchantName = :merchant").setString("merchant", merchant).list();
some code here
}
這工作。
我的問題是如何返回特定flyerId的網點列表。
任何幫助表示讚賞感謝
您需要聲明一個Merchant類(使用Java),然後將其映射(在.hbm文件中)到包含商家的表中。然後Outlet和Flyer(使用Java)都會引用他們的Merchant(商家商家,而不是你現在的String商人名稱),並且你會使映射(在.hbm中)將他們鏈接在一起。 您應該閱讀Hibernate文檔的所有這兩部分:https://docs.jboss.org/hibernate/orm/3.3/reference/en-US/html/mapping.html#mapping-declaration-manytoone和https ://docs.jboss.org/hibernate/orm/3.3/reference/en-US/html/collections.html。 – Tim
此外,[Java持久與休眠](http://www.manning.com/bauer2/)是一本很好的書,涵蓋了使Hibernate正常工作的所有複雜細節。如果你打算掌握Hibernate,那就是要閱讀的書。 – Tim