基于 ElasticSearch 实现站内全文搜索

}

public String getCreateDate() {

return createDate;

}

public void setCreateDate(String createDate) {

this.createDate = createDate;

}

public String getUrl() {

return url;

}

public void setUrl(String url) {

this.url = url;

}

}

5.2 客户端配置

通过java配置es的客户端。

package com.lbh.es.config;

import org.apache.http.HttpHost;

import org.elasticsearch.client.RestClient;

import org.elasticsearch.client.RestClientBuilder;

import org.elasticsearch.client.RestHighLevelClient;

import org.springframework.beans.factory.annotation.Value;

import org.springframework.context.annotation.Bean;

import org.springframework.context.annotation.Configuration;

import java.util.ArrayList;

import java.util.List;

/**

* Copyright©lbhbinhao@163.com

* @author liubinhao

* @date 2021/3/3

*/

@Configuration

public class EsConfig {

@Value(“${elasticsearch.schema}”)

private String schema;

@Value(“${elasticsearch.address}”)

private String address;

@Value(“${elasticsearch.connectTimeout}”)

private int connectTimeout;

@Value(“${elasticsearch.socketTimeout}”)

private int socketTimeout;

@Value(“${elasticsearch.connectionRequestTimeout}”)

private int tryConnTimeout;

@Value(“${elasticsearch.maxConnectNum}”)

private int maxConnNum;

@Value(“${elasticsearch.maxConnectPerRoute}”)

private int maxConnectPerRoute;

@Bean

public RestHighLevelClient restHighLevelClient() {

// 拆分地址

List hostLists = new ArrayList<>();

String[] hostList = address.split(“,”);

for (String addr : hostList) {

String host = addr.split(“:”)[0];

String port = addr.split(“:”)[1];

hostLists.add(new HttpHost(host, Integer.parseInt(port), schema));

}

// 转换成 HttpHost 数组

HttpHost[] httpHost = hostLists.toArray(new HttpHost[]{});

// 构建连接对象

RestClientBuilder builder = RestClient.builder(httpHost);

// 异步连接延时配置

builder.setRequestConfigCallback(requestConfigBuilder -> {

requestConfigBuilder.setConnectTimeout(connectTimeout);

requestConfigBuilder.setSocketTimeout(socketTimeout);

requestConfigBuilder.setConnectionRequestTimeout(tryConnTimeout);

return requestConfigBuilder;

});

// 异步连接数配置

builder.setHttpClientConfigCallback(httpClientBuilder -> {

httpClientBuilder.setMaxConnTotal(maxConnNum);

httpClientBuilder.

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值