Shv*_*alb 2 java hibernate hql
我有一个条目如下:
@Entity
@Table(name="rank")
class Rank implements Serializable {
private int id;
private int rank_id;
private date creationDate;
...
// getters\setters...
}
Run Code Online (Sandbox Code Playgroud)
我想查询这个表并将结果放入HashMap!如下:
Map<Integer, Rank> = session.createSQL("select new map...").list();
Run Code Online (Sandbox Code Playgroud)
是否可以将实体作为地图的值?
我可以获得一个代码示例吗?
是的,例如:
Select new Map(r.id,r) FROM Rank r
但这将返回地图列表.你应该看看这里更好地理解.
编辑:为了更好地解释,返回将是这样的:
List<Map<Long, Rank>> ranks = (List<Map<Long, Rank>>) session.createQuery("select new Map<r.rankId,r> FROM Rank r").list();
Run Code Online (Sandbox Code Playgroud)
每条记录都是一张地图.不幸的是,要将所有地图放在一个地图中,必须手动:
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);
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
9723 次 |
| 最近记录: |