wordpress建企业网站设置,做网站能用的字体,wap建站php源码,网络服务器销售商个人名片#xff1a; 博主#xff1a;酒徒ᝰ. 个人简介#xff1a;沉醉在酒中#xff0c;借着一股酒劲#xff0c;去拼搏一个未来。 本篇励志#xff1a;三人行#xff0c;必有我师焉。 本项目基于B站黑马程序员Java《SpringCloud微服务技术栈》#xff0c;SpringCloud… 个人名片 博主酒徒ᝰ. 个人简介沉醉在酒中借着一股酒劲去拼搏一个未来。 本篇励志三人行必有我师焉。 本项目基于B站黑马程序员Java《SpringCloud微服务技术栈》SpringCloudRabbitMQDockerRedis搜索分布式 【SpringCloudRabbitMQDockerRedis搜索分布式系统详解springcloud微服务技术栈课程|黑马程序员Java微服务】 点击观看 目录 四、RestAPI 四、RestAPI ES官方提供了各种不同语言的客户端用来操作ES。 这些客户端的本质就是组装DSL语句通过http请求发送给ES。 官方文档地址https://www.elastic.co/guide/en/elasticsearch/client/index.html 案例利用JavaRestClient实现创建、删除索引库判断索引库是否存在
准备工程 导入项目 导入mysql数据 修改application.yaml中的url和password改为自己数据库的位置和密码创建索引库 导入es依赖
dependencygroupIdorg.elasticsearch.client/groupIdartifactIdelasticsearch-rest-high-level-client/artifactId
/dependency更改es版本为我们当前使用的版本
propertieselasticsearch.version7.12.1/elasticsearch.version
/properties初始化代码
public class HotelIndexTest {private RestHighLevelClient client;BeforeEachvoid setUp() {this.client new RestHighLevelClient(RestClient.builder(HttpHost.create(http://192.168.179.128:9200)));}AfterEachvoid tearDown() throws IOException {this.client.close();}
}建立DSL的JSON参数部分
package cn.itcast.hotel;public class HotelConstants {public static final String MAPPING_TEMPLATE {\n \mappings\: {\n \properties\: {\n \id\: {\n \type\: \keyword\\n },\n \name\: {\n \type\: \text\,\n \analyzer\: \ik_max_word\,\n \copy_to\: \all\\n },\n \address\: {\n \type\: \keyword\,\n \index\: false\n },\n \price\: {\n \type\: \integer\\n },\n \score\: {\n \type\: \integer\\n },\n \brand\: {\n \type\: \keyword\,\n \copy_to\: \all\\n },\n \city\: {\n \type\: \keyword\\n },\n \starName\: {\n \type\: \keyword\\n },\n \business\: {\n \type\: \keyword\,\n \copy_to\: \all\\n },\n \location\: {\n \type\: \geo_point\\n },\n \pic\: {\n \type\: \keyword\,\n \index\: false\n },\n \all\: {\n \type\: \text\,\n \index\: true,\n \analyzer\: \ik_max_word\\n }\n }\n }\n };
}
发送请求
Test
void testCreateHotelIndex() throws IOException {CreateIndexRequest request new CreateIndexRequest(hotel);request.source(MAPPING_TEMPLATE, XContentType.JSON);client.indices().create(request, RequestOptions.DEFAULT);
}
删除索引库
Test
void testDeleteHotelIndex() throws IOException {DeleteIndexRequest request new DeleteIndexRequest(hotel);client.indices().delete(request, RequestOptions.DEFAULT);
}判断索引库是否存在
Test
void testExitsHotelIndex() throws IOException {GetIndexRequest request new GetIndexRequest(hotel);boolean exists client.indices().exists(request, RequestOptions.DEFAULT);System.out.println(exists);
}总结 JavaRestClient操作elasticsearch的流程基本类似。 核心是client.indices()方法来获取索引库的操作对象。 索引库操作的基本步骤 初始化RestHighLevelClient 创建XxxIndexRequest。XXX是Create、Get、Delete 准备DSL Create时需要其它是无参 发送请求。调用RestHighLevelClient#indices().xxx()方法xxx是create、exists、delete