Jpa 如何查询@ElementCollection HashMap

Jpa 如何查询@ElementCollection HashMap,jpa,hashmap,Jpa,Hashmap,我有一个具有不同字段的实体: @Entity public class TestEntity { private int id; private String name; private String description; @ElementCollection private Map<String, String> parameter = new HashMap<>(); } 但是,当我尝试部署时,会出现一个错误 我对hi

我有一个具有不同字段的实体:

@Entity
public class TestEntity {

    private int id;
    private String name;
    private String description;

    @ElementCollection
    private Map<String, String> parameter = new HashMap<>();
}
但是,当我尝试部署时,会出现一个错误

我对hibernate和JavaEE比较陌生。也许我的方法是错误的,但我没有发现如何使用命名查询访问映射的字段,因为它为该映射创建了一个新表。所以我想我需要加入那些表格

希望你们能帮我:) 非常感谢:)

问候
Simon

您可以使用下面的查询

SELECT te FROM TestEntity te INNER JOIN te.parameter p WHERE KEY(p) = :YOUR_KEY 
AND VALUE(p) = :YOUR_VALUE

是否要启动HQL查询或SQL查询?我要启动命名的HQL查询;)如果一次要搜索多对,我们该怎么办?
SELECT te FROM TestEntity te INNER JOIN te.parameter p WHERE KEY(p) = :YOUR_KEY 
AND VALUE(p) = :YOUR_VALUE