0

我找不到适合我的问题的问题,所以我只提出了那个问题。所以我想把我的查询问题的结果放到哈希图中,我的问题是这样的

import org.hibernate.Query;
private static final String SELECT_MANUFACTURER_PROJECT_DISP_ID = "SELECT O.manufacturers, P.dispid" +
        "FROM offerOrder O" +
        "JOIN offerOrderProjectRel R" +
        "ON O.id = R.offerOrderId" +
        "JOIN project P" +
        "ON P.id = R.projectId" +
        "WHERE O.type = 'ORDER'";
public Map <String,String >createManufacturerProjectDispIdMap() {
    Map<String, String> map = new LinkedHashMap<String, String>();
    Query q = getSession().createQuery(SELECT_MANUFACTURER_PROJECT_DISP_ID);
    return map;
}

正如你所看到的,我连接了 3 张桌子,但我认为这没关系。我得到了 O.manufacturer 和 P.dispid 正确,但我不知道如何像这样将它放入 hashmap

O.manufacturer1 -> P.dispid1
O.manufacturer2 -> P.dispid2
O.manufacturer3 -> P.dispid3
[...]

这是我第一次使用hibernate,所以可能这就是我遇到这个问题的原因,我仍然不知道它是如何工作的。对不起我的英语和谢谢提前回答。不必Map<String,String>那么随意用任何地图给我答案

4

1 回答 1

1

您可以对结果进行交互并将自己放入这样的地图中:

Query q = getSession().createQuery(SELECT_MANUFACTURER_PROJECT_DISP_ID);
for(Object o : q.list())
{
   map.put(o.id(), o);
}

干杯!!

于 2013-10-10T15:35:43.520 回答