2015-11-11 35 views
0

我必須使用_source屬性限制源級別的字段。在Spring數據彈性搜索中使用@query註釋來限制字段

GET /analysis/_search?size=5 
{ "_source": ["Job.jobdate"], 
    "query": {"query_string": { 
      "query": "(Job.state:\"PA\") " 
     } 

}} 

我必須將上述查詢轉換爲我們在Spring數據彈性搜索中使用的@Query註釋。

下面是@query註釋的示例。但我需要類似的方式來實現上述查詢。

@Query(" {\"bool\": { \"must\": [{ \"match\": {\"state\":\"08/02/2015\"}}] } }") 
     Iterable<Feeds> findByClient(String state; 

回答

0

像這樣的事情應該工作,即你需要正確地轉義反斜線和雙引號:

@Query("{\"query_string\": { \"query\": \"(Job.state:\\\"PA\\\")\"}") 
+0

但我需要限制從源作爲搜索結果獲得的領域。 「_source」:[「Job.jobdate」]。你有什麼想法嗎? – Swar

+1

好吧,這不會進入'@ Query'註釋,它只接受ES請求的'query'部分。我會說這取決於你的Java方法只返回你需要的字段。 – Val