ElasticSearch6.5.4四java使用ES并实战搜索

本文档介绍了ElasticSearch 6.5.4版本中,如何使用Java REST Client进行集成,特别是针对中文和拼音搜索的实战应用,包括全拼、简拼、首字母及混合搜索的实现。详细步骤涵盖设置、客户端实例化、数据操作,并提供了排序优先级策略。
摘要由CSDN通过智能技术生成

ElasticSearch6.5.4<一>单机部署以及简单尝试

ElasticSearch6.5.4<二>几个重要概念以及常用搜索

ElasticSearch6.5.4<三>中文以及拼音的操作

ElasticSearch6.5.4<四>java使用ES并实战搜索

ElasticSearch6.5.4<五>集群操作

ElasticSearch6.5.4<六>ELK和Logstash同步数据

ElasticSearch6.5.4<七>ES分布式原理以及工作原理

ElasticSearch6.5.4<八>ES常见问题

 前言

java的es客户端有两种Java REST Client和Java API,Java REST Client分为Java Low Level REST Client和Java High Level REST Client,Java API分为Node Client和Transport Client

在Java API中,官方明确表示了Transport Client7.x开始不推荐,8.x开始废除,Node Client在2.3开始推荐用Transport Client替代。目前推荐使用Java REST Client

java整合选型

SpringMVC:我选择Java REST Client,自己封装es client然后进行调用

SpringBoot:参考最新文章SpringBoot集成ElasticSearch的几种方式

Java REST Client基本使用

参考文档:https://www.elastic.co/guide/en/elasticsearch/client/java-rest/6.5/index.html

1导入

<dependency>
    <groupId>org.elasticsearch.client</groupId>
    <artifactId>elasticsearch-rest-high-level-client</artifactId>
    <version>6.5.4</version>
</dependency>

2实例化


RestHighLevelClient client = new RestHighLevelClient(
        RestClient.builder(
                new HttpHost("localhost", 9200, "http"),
                new HttpHost("localhost", 9201, "http")));

3新增

IndexRequest request = new IndexRequest(
        "posts", 
        "doc",  
        "1");   
String jsonString = "{" +
        "\"user\":\"kimchy\"," +
        "\"postDate\":\"2013-01-30\"," +
        "\"message\":\"trying out Elasticsearch\"" +
        "}";
request.source(jsonString, XContentType.JSON);

4查询

SearchRequest searchRequest = new SearchRequest(); 
SearchSourceBuilder searchSourceBuilder = new SearchSourceBuilder(); 
searchSourceBuilder.query(QueryBuilders.matchAllQuery()); 
searchRequest.source(searchSourceBuilder);

5修改


UpdateRequest request = new UpdateRequest(
        "posts", 
        
  • 1
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值