【发布时间】:2013-12-12 07:24:58
【问题描述】:
例如,如果有一个@ElementCollection 类型为Map 的文件,那么如果我尝试获取映射键或值字段,那么如何处理?
Class Deal{
.....
private String name;
private String department;
private DealType type;
@AttributeOverrides({
@AttributeOverride(name="value.in.available", column=@Column(name="in_avl")),
@AttributeOverride(name="value.in.unavailable", column=@Column(name="in_unv")),
@AttributeOverride(name="value.out.available", column=@Column(name="out_avl")),
@AttributeOverride(name="value.out.unavailable", column=@Column(name="out_unv"))
})
@ElementCollection(fetch = FetchType.EAGER)
......
}
所以如果我尝试得到这样的东西
select new SummaryAmount(SUM(t.value.in.available), SUM(t.value.in.unavailable),
SUM(t.value.out.available), SUM(t.value.out.unavailable)) from Deal AS d INNER
JOIN d.transactionAmounts t GROUP by t.key;
现在有可能解决吗?除了我发明了t.value 和t.key 之外,一切都按照本书进行,因为我真的不知道如何在 JPQL 中呈现映射键和值。谢谢
谢谢
【问题讨论】: