选择具有精确映射键和值的每一行



这是我的Person类的一部分:

@Entity
public class Person {
    @ElementCollection(fetch = FetchType.EAGER)
    private Map<String, String> externalPropertyMap = new HashMap<>();
}

所以我需要从这张地图中选择每个具有确切键和值的人。例如,选择每个具有key="prefferedNumber"value="123456"的人

我该怎么做?

实际上这并不准确:

所以我需要从这张地图中选择每个具有确切键和值的人

你有一个HashMap,一个不允许重复键的Map实现,所以,你只会从HashMap的每个键得到一个值

为此,您需要使用另一种Map实现,但不要担心,有人已经遇到了您的问题:

  • 尝试此实现
  • 来自ApacheCommons的MultiMap

    MultiMap是语义略有不同的地图。将值放入Map会将该值添加到该键处的Collection获取一个值将返回一个Collection,保存该键的所有值。

最新更新