当前位置: 首页 > news >正文

网站解析后显示建设中国家企业信息系统查询系统官方

网站解析后显示建设中,国家企业信息系统查询系统官方,网站开发网页跳转到新的页面,别人网站的字体1 RestHighLevelClient介绍 默认情况下#xff0c;ElasticSearch使用两个端口来监听外部TCP流量。 9200端口#xff1a;用于所有通过HTTP协议进行的API调用。包括搜索、聚合、监控、以及其他任何使用HTTP协议的请求。所有的客户端库都会使用该端口与ElasticSearch进行交互。…1 RestHighLevelClient介绍 默认情况下ElasticSearch使用两个端口来监听外部TCP流量。 9200端口用于所有通过HTTP协议进行的API调用。包括搜索、聚合、监控、以及其他任何使用HTTP协议的请求。所有的客户端库都会使用该端口与ElasticSearch进行交互。9300端口是一个自定义的二进制协议用于集群中各节点之间的通信。用于诸如集群变更、主节点选举、节点加入/离开、分片分配等事项。 RestHighLevelClient是ES的Java客户端它是通过HTTP与ES集群进行通信。 2 引入ES依赖 !--引入es-high-level-client相关依赖 start-- dependencygroupIdorg.elasticsearch/groupIdartifactIdelasticsearch/artifactIdversion7.10.0/version /dependencydependencygroupIdorg.elasticsearch.client/groupIdartifactIdelasticsearch-rest-client/artifactIdversion7.10.0/version /dependencydependencygroupIdorg.elasticsearch.client/groupIdartifactIdelasticsearch-rest-high-level-client/artifactIdversion7.10.0/version /dependency !--引入es-high-level-client相关依赖 end--3 使用 3.1 es的配置 # es配置 # es用户名 elasticsearch.userNameelastic # es密码 elasticsearch.passwordelastic # es host ip 地址(集群)多个以,间隔 elasticsearch.hosts127.0.0.1:9200 # es 请求方式 elasticsearch.schemehttp # es 连接超时时间ms elasticsearch.connectTimeOut1000 # es socket 连接超时时间ms elasticsearch.socketTimeOut30000 # es 请求超时时间ms elasticsearch.connectionRequestTimeOut500 # es 最大连接数 elasticsearch.maxConnectNum100 # es 每个路由的最大连接数 elasticsearch.maxConnectNumPerRoute100 3.2 es客户端配置类 /*** restHighLevelClient 客户端配置类**/ Slf4j Data Configuration ConfigurationProperties(prefix elasticsearch) public class ElasticsearchConfig {/*** es host ip 地址集群*/private String hosts;/*** es用户名*/private String userName;/*** es密码*/private String password;/*** es 请求方式*/private String scheme;/*** es 连接超时时间*/private int connectTimeOut;/*** es socket 连接超时时间*/private int socketTimeOut;/*** es 请求超时时间*/private int connectionRequestTimeOut;/*** es 最大连接数*/private int maxConnectNum;/*** es 每个路由的最大连接数*/private int maxConnectNumPerRoute;/*** 如果Bean没有指定bean的名称那么方法名就是bean的名称*/Bean(name restHighLevelClient)public RestHighLevelClient restHighLevelClient() {// 构建连接对象RestClientBuilder builder RestClient.builder(getEsHost());// 连接延时配置builder.setRequestConfigCallback(requestConfigBuilder - {requestConfigBuilder.setConnectTimeout(connectTimeOut);requestConfigBuilder.setSocketTimeout(socketTimeOut);requestConfigBuilder.setConnectionRequestTimeout(connectionRequestTimeOut);return requestConfigBuilder;});// 连接数配置builder.setHttpClientConfigCallback(httpClientBuilder - {httpClientBuilder.setMaxConnTotal(maxConnectNum);httpClientBuilder.setMaxConnPerRoute(maxConnectNumPerRoute);httpClientBuilder.setDefaultCredentialsProvider(getCredentialsProvider());return httpClientBuilder;});return new RestHighLevelClient(builder);}private HttpHost[] getEsHost() {// 拆分地址es为多节点时不同host以逗号间隔ListHttpHost hostLists new ArrayList();String[] hostList hosts.split(,);for (String addr : hostList) {String host addr.split(:)[0];String port addr.split(:)[1];hostLists.add(new HttpHost(host, Integer.parseInt(port), scheme));}// 转换成 HttpHost 数组return hostLists.toArray(new HttpHost[]{});}private CredentialsProvider getCredentialsProvider() {// 设置用户名、密码CredentialsProvider credentialsProvider new BasicCredentialsProvider();credentialsProvider.setCredentials(AuthScope.ANY, new UsernamePasswordCredentials(userName, password));return credentialsProvider;} } 3.3 es的使用 3.3.1 创建es索引 3.3.1.1 创建es索引的工具类 创建es索引的工具类如下所示。 /*** 操作ES索引**/ Slf4j Service public class EsIndexOperation {Resourceprivate RestHighLevelClient restHighLevelClient;private final RequestOptions options RequestOptions.DEFAULT;/*** 判断索引是否存在*/public boolean checkIndex(String index) {try {return restHighLevelClient.indices().exists(new GetIndexRequest(index), options);} catch (Exception e) {log.error(EsIndexOperation checkIndex error., e);}return Boolean.FALSE;}/*** 创建索引** param indexName es索引名* param esSettingFilePath es索引的alias、settings和mapping的配置文件*/public boolean createIndex(String indexName, String esSettingFilePath) {String aliases null;String mappings null;String settings null;if (StringUtils.isNotBlank(esSettingFilePath)) {try {String fileContent FileUtils.readFileContent(esSettingFilePath);if (StringUtils.isNotBlank(fileContent)) {JSONObject jsonObject JSON.parseObject(fileContent);aliases jsonObject.getString(aliases);mappings jsonObject.getString(mappings);settings jsonObject.getString(settings);}} catch (Exception e) {log.error(createIndex error., e);return false;}}if (checkIndex(indexName)) {log.error(createIndex indexName:[{}]已存在, indexName);return false;}CreateIndexRequest request new CreateIndexRequest(indexName);if ((StringUtils.isNotBlank(aliases))) {request.aliases(aliases, XContentType.JSON);}if (StringUtils.isNotBlank(mappings)) {request.mapping(mappings, XContentType.JSON);}if (StringUtils.isNotBlank(settings)) {request.settings(settings, XContentType.JSON);}try {this.restHighLevelClient.indices().create(request, options);return true;} catch (IOException e) {log.error(EsIndexOperation createIndex error., e);return false;}}/*** 删除索引*/public boolean deleteIndex(String indexName) {try {if (checkIndex(indexName)) {DeleteIndexRequest request new DeleteIndexRequest(indexName);AcknowledgedResponse response restHighLevelClient.indices().delete(request, options);return response.isAcknowledged();}} catch (Exception e) {log.error(EsIndexOperation deleteIndex error., e);}return Boolean.FALSE;} }3.3.1.2 读取文件的工具类 /*** 文件操作类*/ Slf4j public class FileUtils {/*** 读取项目resources文件夹下的文件** param filePath 文件路径* return 文件内容*/public static String readFileContent(String filePath) {try {BufferedReader reader new BufferedReader(new FileReader(filePath));String line;StringBuilder stringBuilder new StringBuilder();while ((line reader.readLine()) ! null) {stringBuilder.append(line);}reader.close();return stringBuilder.toString();} catch (IOException e) {log.error(readFileContent error., e);}return null;}public static void main(String[] args) {String filePath src/main/resources/es/mappings_test20231216.txt;String fileContent readFileContent(filePath);}}3.3.1.3 测试创建es索引 1在“resources”文件夹下创建es索引的配置文件 配置文件内容如下所示。 {aliases: {test: {}},mappings: {properties: {name: {type: text,fields: {keyword: {type: keyword,ignore_above: 256}}},address: {type: text,fields: {keyword: {type: keyword,ignore_above: 256}}}}},settings: {index: {number_of_shards: 1,number_of_replicas: 1}} } 2读取es索引的配置文件创建es索引 Testpublic void createIndex() {String indexName test_1216;String filePath src/main/resources/es/mappings_test20231216.txt;boolean b esIndexOperation.createIndex(indexName, filePath);Assert.assertTrue(b);} 3查看创建结果 通过命令 GET /test 查看es索引创建结果结果如下所示。 {test_1216 : {aliases : {test : { }},mappings : {properties : {address : {type : text,fields : {keyword : {type : keyword,ignore_above : 256}}},name : {type : text,fields : {keyword : {type : keyword,ignore_above : 256}}}}},settings : {index : {routing : {allocation : {include : {_tier_preference : data_content}}},number_of_shards : 1,provided_name : test_1216,creation_date : 1702723364945,number_of_replicas : 1,uuid : RCAhqjPZSG-n4fse3cot4A,version : {created : 7100099}}}} }4 参考文献 1elasticsearch学习七es客户端RestHighLevelClient_炎升的博客 2中间件ElasticSearch组件RestHighLevelClient用法详解 3java api 实现es中的索引管理_createindexrequest
http://www.hkea.cn/news/14538370/

相关文章:

  • 兰州建设厅评职称网站python 网站开发代码
  • 全国做网站的大公司有哪些人人做网站
  • 徐州网站快速优化排名可信网站 收费
  • 湖南养老院中企动力网站建设网站开发主要技术
  • 茂名做网站建设公司可信赖的镇江网站建设
  • 优秀网站建设模版中国空间站现在有几个人
  • 如何把网站扒下来营销型网站深度网
  • 网站开发与设计实训报告心得宁波网站推广外包服务
  • 网址收录网站wordpress 找不到文件路径
  • 衡阳市网站建设公司直播网站怎么做的
  • 网站制作怎么做让点击高wordpress网页标签图标
  • 途牛网电子商务网站建设分析有哪些网站可以做全景效果图
  • 昌都网站建设好的网站页面
  • 设计开发上海网站设计开发公司男女做暧网站
  • 威龙电子商务做的网站推广方案框架
  • 个人可以做自媒体网站吗怎么增加网站反链
  • 丰台做网站公司个人备案 做网站
  • 亿赐客网站怎么样做网站选择虚拟主机好是服务器
  • 宁波网站建设公司信息查询网站开发费用科目
  • 大连建设网官方网站sina app engine wordpress
  • wordpress英文版变成中文版廊坊视频优化展现
  • 网站如何添加数据高级搜索引擎
  • 阿里云服务器 怎么设置网站环境铲车找事做找哪些网站
  • 提供邯郸做移动网站网站什么也没动怎么不收录啦
  • 北京造价员变更在哪个网站做免费好用的网页制作工具
  • wordpress 全站搜索推广方案框架
  • 网站优化排名易下拉用法网站备案要多长时间
  • 外贸网站建站k公司网站开发费用计入
  • 个人备案的网站销售商品wordpress邮件验证码
  • 一站式做网站设计小网站asp好还是php好