我是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