# all-search **Repository Path**: cpanmac/all-search ## Basic Information - **Project Name**: all-search - **Description**: 🚀🚀【搜索系统】基于ElasticSearch7.3.2、RestHighLevelClient、SpringBoot搭建的通用搜索系统脚手架,帮助开发者快速搭建搜索系统。 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 1 - **Created**: 2021-03-04 - **Last Updated**: 2021-03-04 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README 博客 版本 公众号 ## 简介 + 基于ElasticSearch7.3.2版本的通用搜索系统 + 使用rest-high-level-client操作ES + 封装常用api,包含索引的CRUD、文档的CRUD、索引定制化、模糊搜索、精准匹配搜索 + 是一套操作简单的搜索系统脚手架,稍加修改即可在项目中快速搭建起搜索系统 ## 使用rest-high-level-client整合Es的原因 + TransportClient 存在并发瓶颈 + rest-client 版本较低无法支持新特性 + SpringBoot的Es模板ElasticsearchRepository更新较慢,不支持高版本的ES ## 使用方式 `git clone`按需复制到自己的项目里即可 ## 组件版本 | 组件 | Version | | ------------------------ | ------------- | | Elasticsearch | 7.3.2 | | Elasticsearch-rest-high-level-client | 7.3.2 | | Fastjson | 1.2.60 | | SpringBoot | 2.1.0.RELEASE | ## 目录 ``` ├── src │   ├── main │      ├── java │      │   └── com │      │   └── anqi │      │   └── es │      │   ├── DemoEsApplication.java │      │   ├── Main.java │      │   ├── client │      │   │   └── ESClientConfig.java 老版本RestClient封装,这里不会使用 │      │   ├── controller │      │   │   └── EsController.java 搜索测试接口 │      │   ├── highclient │      │   │   ├── RestHighLevelClientConfig.java Client配置 │      │   │   └── RestHighLevelClientService.java 搜索API │      │   └── util │      │   └── SnowflakeIdWorker.java Twitter的雪花算法用来生成文档id │      └── resources │      ├── application.properties │      ├── static │      └── templates ├── pom.xml ``` ## maven说明 因为elasticsearch-rest-high-level-client7.3.2 依赖 elasticsearch 6.4.2 和 elasticsearch-rest-client 6.4.2 ,而目前这已经是中央仓库中最高版本的jar包了(8.0.0)还未迁入中央仓库,所以我们手动引入7.3.2的新版本elasticsearch和elasticsearch-rest-client ```xml org.elasticsearch.client elasticsearch-rest-high-level-client 7.3.2 org.elasticsearch.client elasticsearch-rest-client org.elasticsearch elasticsearch org.elasticsearch elasticsearch 7.3.2 org.elasticsearch.client elasticsearch-rest-client 7.3.2 org.springframework.boot spring-boot-starter-web org.springframework.boot spring-boot-starter-test test ```