----------------------------------------------配置文件jar-----------------------------------------------------------
<!-- ES -->
<dependency>
<groupId>org.elasticsearch.client</groupId>
<artifactId>transport</artifactId>
<version>6.2.2</version>
</dependency>
<!-- json -->
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
<version>2.8.5</version>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-annotations</artifactId>
<version>2.8.5</version>
</dependency>
<dependency>
<groupId>org.javassist</groupId>
<artifactId>javassist</artifactId>
<version>3.21.0-GA</version>
</dependency>
<dependency>
<groupId>joda-time</groupId>
<artifactId>joda-time</artifactId>
<version>2.9</version>
</dependency>
<dependency>
<groupId>io.dropwizard.metrics</groupId>
<artifactId>metrics-core</artifactId>
<version>3.1.0</version>
</dependency>
<dependency>
<groupId>com.hankcs</groupId>
<artifactId>hanlp</artifactId>
<version>portable-1.3.1.3</version>
</dependency>
<dependency>
<groupId>com.cn21</groupId>
<artifactId>Time-NLP</artifactId>
<version>1.0.1</version>
</dependency>
《------------------------模糊精确多条件查询------------------》
must : 相当于 MySQL and should : 相当于MySQL or (效率低)
setExplain(true) 匹配顺序
BoolQueryBuilder boolQueryBuilder = QueryBuilders.boolQuery();
boolQueryBuilder.must(QueryBuilders.wildcardQuery("name", "*豆鼓焗带鱼*")).must(termQuery("foodType", "套餐"));
SearchResponse response1 = EsUtils.getClient()
.prepareSearch("food")
.setTypes("_doc")
.setQuery(boolQueryBuilder)
.setFrom(Integer.parseInt("0"))
.setSize(Integer.parseInt("10"))
.setExplain(true)
.execute()
.actionGet();
for(SearchHit hit:response1.getHits().getHits()){
System.out.println(hit.getSourceAsString());
}
《---------------------编辑----------------------》
UpdateRequest updateRequest = new UpdateRequest();
updateRequest.index("food2");
updateRequest.type("_doc");
updateRequest.id("cAjpPmMBFth1dx0K4mIh");
updateRequest.doc(XContentFactory.jsonBuilder().startObject().field("name", "你好李四").endObject());
client.update(updateRequest).get();
《新建》
UpdateRequest updateRequest = new UpdateRequest();
updateRequest.index("food2");
updateRequest.type("_doc");
updateRequest.id("cAjpPmMBFth1dx0K4mIh");
updateRequest.doc(XContentFactory.jsonBuilder().startObject().field("name", "你好李四").endObject());
client.update(updateRequest).get();
《删除》
EsUtils.delete(indexName, type, id);