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

静态网页模板免费下载网站网络营销的特点不包括

静态网页模板免费下载网站,网络营销的特点不包括,简约大气的网站,巴适网站建设接上篇《9、hotel数据结构分析》 上一篇我们讲解了导入的宾馆数据库tb_hotel表结构的具体含义,并分析如何建立其索引库。本篇我们来正式进入链接Elasticsearch的Java代码的编写阶段,先进行RestClient的初始化。 RestClient的初始化分为三步,…

接上篇《9、hotel数据结构分析》
上一篇我们讲解了导入的宾馆数据库tb_hotel表结构的具体含义,并分析如何建立其索引库。本篇我们来正式进入链接Elasticsearch的Java代码的编写阶段,先进行RestClient的初始化。

RestClient的初始化分为三步,如下:

一、环境准备

1.引入依赖

首先需要在项目的pom.xml文件中添加Elasticsearch客户端依赖:

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

由于SpringBoot默认集成的Elasticsearch版本可能与我们需要的不一致:

建议在<properties>中明确指定版本:

<properties><java.version>1.8</java.version><!-- 指定Elasticsearch版本为7.12.1 --><elasticsearch.version>7.12.1</elasticsearch.version>
</properties>

二、初始化RestHighLevelClient

1.创建测试类

我们在src/test/java/cn/itcast/hotel下面新建一个测试文件HotelIndexTest.java:

然后我们在java类中,初始化RestHighLevelClient作为其成员变量:

package cn.itcast.hotel;public class HotelIndexTest {private RestHighLevelClient client;
}

这个对象为什么放在成员变量的位置,因为将来在这个类中我们需要写很多很多的单元测试,如果我在每一个单元测试中都对这个对象进行初始化,就会很麻烦,定义成员变量后就可以复用。

2.初始化方法

定义完成员变量后,我们要对其进行初始化,我们定义一个setUp方法:

@BeforeEach
void setUp(){this.client = new RestHighLevelClient(RestClient.builder(HttpHost.create("http://192.168.2.129:9200") //如果有集群,可以设置多个));
}

初始化的代码中,注解@BeforeEach表示在每个单元测试方法执行前运行,通过RestClient.builder()构建一个低级REST客户端,并传入ES节点的地址,然后使用低级客户端构造RestHighLevelClient对象,赋值给成员变量client。如果有集群,还可以设置多个HttpHost以提高容错性。

3.资源清理方法

然后我们还需要编写一个关闭客户端进行资源清理的代码:

@AfterEach
void tearDown() throws IOException{this.client.close();
}

注解@AfterEach,表示在每个单元测试方法执行后运行。调用client.close()关闭客户端连接,释放资源。注意这个我们方法声明了IOException,因为关闭连接可能引发I/O异常。

三、验证初始化结果

最后我们编写一个测试方法,来打印一下client,看看我们初始化是否成功:

@Test
void testInit(){System.out.println(client);
}

我们启动虚拟机中的docker服务,运行Elasticsearch的9200服务,然后在IDEA编辑器右键testInit()方法执行:

执行完毕后,如果显示绿色,证明我们client初始化成功:

四、常见问题排查

1. 连接失败问题

​●错误现象ConnectException或NoNodeAvailableException
​​●解决方案
(1)确认ES服务是否正常运行
(2)检查防火墙设置,确保9200端口可访问
(3)验证IP地址和端口配置是否正确

2. 版本不兼容问题

​​●错误现象UnsupportedOperationException或序列化错误
​​●解决方案
(1)确保客户端版本与ES服务版本一致
(2)检查elasticsearch.version是否被正确覆盖

3. 资源泄漏问题

​​●错误现象:测试运行后连接未释放
​​●解决方案:
(1)确保tearDown()方法被正确执行
(2)检查是否有未关闭的客户端实例

五、总结

本篇我们完成了RestHighLevelClient的初始化工作,关键要点包括:

1.正确配置Elasticsearch客户端依赖
2.使用@BeforeEach和@AfterEach管理客户端生命周期
3.验证客户端初始化结果
4.掌握常见问题的排查方法

通过规范的初始化流程,为后续的索引库操作奠定了坚实基础。下一篇我们将讲解如何使用RestClient创建索引库。

附:完整代码结构

src/test/java/cn/itcast/hotel/
└── HotelIndexTest.java
测试类完整代码:

package cn.itcast.hotel;import org.apache.http.HttpHost;
import org.elasticsearch.client.RestClient;
import org.elasticsearch.client.RestHighLevelClient;
import org.junit.jupiter.api.AfterEach;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;import java.io.IOException;public class HotelIndexTest {private RestHighLevelClient client;@BeforeEachvoid setUp() {this.client = new RestHighLevelClient(RestClient.builder(HttpHost.create("http://192.168.2.129:9200")));}@AfterEachvoid tearDown() throws IOException {this.client.close();}@Testvoid testInit() {System.out.println(client);}
}

转载请注明出处:https://blog.csdn.net/acmman/article/details/146779179

http://www.dtcms.com/wzjs/120419.html

相关文章:

  • 深圳网站建设公司jsp电子商务与网络营销教案
  • 电商网站设计模板seo网络推广什么意思
  • 用php做医药网站开题报告朋友圈信息流广告投放价格
  • 高端美食网站建设我想做个网站怎么做
  • 免费网站404免费进入百度广告开户
  • 订单拆单在电商网站建设北京seo公司哪家好
  • 网站开发多少工资网站制作
  • 企业服务网站建设今日军事新闻报道
  • 手机做任务网站有哪些内容广州seo优化公司
  • 有自己的网站做淘宝联盟号做吗2023年适合小学生的新闻有哪些
  • 设计手机网站内容模块市场营销策划
  • 512内存服务器做网站什么是互联网营销师
  • 浏览器微信登录入口四川seo整站优化吧
  • 腾讯学生服务器做网站广东东莞最新情况
  • 怎么样才能把网站关键词做有排名网络推广公司名字
  • 淄博做网站的2022拉新推广赚钱的app
  • 自己怎么做网站赚钱吗百度广告服务商
  • 网站建设 长春百度账号管理
  • 网上那么多色图网站怎么做的南昌seo搜索优化
  • 网站设计模版最新搜索引擎排名
  • 三维家软件培训班论坛seo招聘
  • ubuntu服务器做网站搜索引擎营销的过程
  • 网站建设英文怎么说营销软文
  • 必应网站收录提交入口产品市场推广计划书
  • 哪些网站容易做代写企业软文
  • 哪些公司用.cc做网站谁有推荐的网址
  • 大气网站模板下载网络营销的含义的理解
  • 天津智能网站建设制作sem竞价推广是什么意思
  • 公司网站被黑有不良信息 做笔录新闻式软文经典案例
  • 海南响应式网站建设方案游戏广告推广平台