我正在寻找与此 JPQL 查询等效的 JPA 2 标准:
select e from Entity e join e.myMap m where KEY(m) = 'myKey' and VALUE(m) = ‘myValue’
谢谢!
最佳答案
未测试,但我想这应该没问题:
CriteriaBuilder cb = em.getCriteriaBuilder();
CriteriaQuery<Entity> criteria = cb.createQuery(Entity.class);
Root<Entity> entity = criteria.from(Entity.class);
MapJoin<Entity, String, String> mapJoin = entity.joinMap(Entity_.myMap);
criteria.where(cb.and(cb.equal(mapJoin.key(), "myKey"),
cb.equal(mapJoin.value(), "myValue")));
关于java - 使用 JPA 2.0 标准查询 map ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8490930/