无效的自定义@Query语法弹簧弹力搜索
问题描述:
有人可以阐明这个角度,我在这里遵循的例子:无效的自定义@Query语法弹簧弹力搜索
...但是,语法不可能工作。它导致类似于下面的图像的语法错误。 (不用说,这并不编译)
我试图逃跑的报价,但由此产生的elastic
查询不低于异常工作:
事情是,我发现其他例子是使用相似的格式,当然不工作: Spring Data elasticsearch @Query annotation for nested objects
任何想法S'
答
你有两个问题:
答field
查询不存在了,你需要或者match
或term
使用(错误消息说“不为[现场]注册查询”)
{"bool": {"must": {"term": {"name": "?0"}}}}
B.你需要逃避查询里面的双引号(因为你可以看到你的IDE是红线查询)
@Query("{\"bool\": {\"must\": {\"term\": {\"name\": \"?0\"}}}}")
什么elasticsearch一个版本你运行吗?检查所需的elasticsearch数据库版本。如果我是对的,他们依赖于旧的弹性1.5.4。如果您运行的是弹性2.x,则不起作用。如果你升级到spring-data elasticsearch的2.x版本,它会好很多。使用弹性5,客户端对使用的服务器版本的影响要小得多。但有一个好看的是明智的。 –
@JettroCoenradie现在只是检查版本,谢谢 – wired00
嗯所以与Jhipster发电机,并由于某种原因它来包装1.5.2和spring-data-elasticsearch 1.3.4 ...:/ – wired00