【发布时间】:2012-02-05 17:06:51
【问题描述】:
我有以下@Entities
@Entity
public class Configuration{
@OneToMany
protected Map<String, Component> components;
}
和
@Entity
public class Component{
protected String displayName;
}
我不明白为什么会这样,返回所有配置
CriteriaBuilder cb = em.getCriteriaBuilder();
CriteriaQuery<Configuration> cq = cb.createQuery(Configuration.class);
Root<Configuration> pc = cq.from(Configuration.class);
cq.select(pc);
但是如果我做一个 MapJoin,即使没有设置任何条件,它也不会返回任何东西
CriteriaBuilder cb = em.getCriteriaBuilder();
CriteriaQuery<Configuration> cq = cb.createQuery(Configuration.class);
Root<Configuration> pc = cq.from(Configuration.class);
MapJoin<Configuration, String, Component> mapJoin = pc.join(Configuration_.components);
cq.select(pc);
我错过了什么?我很茫然,我已经完成了教程,但还没有找到我需要的答案。非常感谢任何帮助。
【问题讨论】:
标签: jpa jpa-2.0 criteria criteria-api