无效的自定义@Query语法Spring Elastic Search

时间:2016-07-26 05:54:18

标签: java elasticsearch spring-boot jhipster

有人能说清楚这一点,我已经按照这里的例子进行了说明:

http://docs.spring.io/spring-data/elasticsearch/docs/1.3.4.RELEASE/reference/html/#elasticsearch.query-methods.at-query

...但是,语法不可行。它导致类似于下图像的语法错误。 (不用说这不编译)

enter image description here

我试图逃避引号,但生成的elastic查询不适用于以下异常:

enter image description here

问题是,我发现的其他例子都使用了类似的格式,当然不能正常工作: Spring Data elasticsearch @Query annotation for nested objects

有什么想法吗?

1 个答案:

答案 0 :(得分:3)

您有两个问题:

一个。 field查询不再存在,您需要使用matchterm(错误消息显示“没有为[field]注册查询”)

{"bool": {"must": {"term": {"name": "?0"}}}}

B中。您需要在查询中转义双引号(因为您可以看到IDE正在使查询变为红色)

@Query("{\"bool\": {\"must\": {\"term\": {\"name\": \"?0\"}}}}")