From d896ffe4f2ca49345fd17a659294915a0a94a2f9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?F=E5=98=89=E9=98=B3?= Date: Sat, 19 May 2018 23:06:39 +0800 Subject: [PATCH] =?UTF-8?q?=E8=A1=A5=E5=85=A8=E6=B3=A8=E9=87=8A?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../elasticsearch/Controller/QueryBookController.java | 5 +++++ .../elasticsearch/Controller/UpdateBookController.java | 10 ++++++++++ 2 files changed, 15 insertions(+) diff --git a/src/main/java/top/fjy8018/elasticsearch/Controller/QueryBookController.java b/src/main/java/top/fjy8018/elasticsearch/Controller/QueryBookController.java index bd79e47..8115564 100644 --- a/src/main/java/top/fjy8018/elasticsearch/Controller/QueryBookController.java +++ b/src/main/java/top/fjy8018/elasticsearch/Controller/QueryBookController.java @@ -50,8 +50,10 @@ public class QueryBookController { @RequestParam(name = "gt_word_count", defaultValue = "0") int gtWordCount, @RequestParam(name = "lt_word_count", required = false) Integer ltWordCount) { String type = "novel"; + // 构造布尔查询 BoolQueryBuilder boolQuery = QueryBuilders.boolQuery(); + // 根据传入的字段构造查询体 if (author != null) { boolQuery.must(QueryBuilders.matchQuery("author", author)); } @@ -60,10 +62,13 @@ public class QueryBookController { boolQuery.must(QueryBuilders.matchQuery("title", title)); } + // 构造范围查询 RangeQueryBuilder rangeQuery = QueryBuilders.rangeQuery("word_count").from(gtWordCount); + if (ltWordCount != null && ltWordCount > 0) { rangeQuery.to(ltWordCount); } + // 加入filter中 boolQuery.filter(rangeQuery); diff --git a/src/main/java/top/fjy8018/elasticsearch/Controller/UpdateBookController.java b/src/main/java/top/fjy8018/elasticsearch/Controller/UpdateBookController.java index a5c7f22..7b1600f 100644 --- a/src/main/java/top/fjy8018/elasticsearch/Controller/UpdateBookController.java +++ b/src/main/java/top/fjy8018/elasticsearch/Controller/UpdateBookController.java @@ -34,6 +34,16 @@ public class UpdateBookController { @Autowired private TransportClient client; + /** + * 更新数据 + * + * @param id + * @param title + * @param author + * @param wordCount + * @param publishDate + * @return + */ @PutMapping("/novel") public ResponseEntity update(@RequestParam(name = "id") String id, @RequestParam(name = "title", required = false) String title,