gpt4 book ai didi

java - 如何使用 Hibernate\HQL 返回 Map

转载 作者:行者123 更新时间:2023-12-02 00:06:30 25 4
gpt4 key购买 nike

我有一个条目如下:

@Entity
@Table(name="rank")
class Rank implements Serializable {
private int id;
private int rank_id;
private date creationDate;
...
// getters\setters...
}

我想查询这个表并将结果放入HashMap!如下:

Map<Integer, Rank> = session.createSQL("select new map...").list();

是否可以将实体作为 map 的值?

能给我一个代码示例吗?

最佳答案

是的,例如:

从排名 r 中选择新 map (r.id,r)

但这将返回 map 列表。你应该看看here以便更好地理解。

编辑:为了更好地解释,返回结果将如下所示:

List<Map<Long, Rank>> ranks = (List<Map<Long, Rank>>) session.createQuery("select new Map<r.rankId,r> FROM Rank r").list();

每条记录都有一个映射。不幸的是,要将所有内容放入一张 map 中,必须手动进行:

List<Rank> ranks = (List<Rank>) session.createQuery("select new r FROM Rank r").list();
Map<Long, Rank> mapRanks = new HashMap<Long, Rank>();
for (Rank rank : ranks) {
if (!map.contains(rank.getId()) {
map.put(rank.getId(), rank);
}
}

关于java - 如何使用 Hibernate\HQL 返回 Map<Key, Value>,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31521080/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com