springboot java 项目连接es

这篇具有很好参考价值的文章主要介绍了springboot java 项目连接es。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

springboot java 项目连接es

介绍

小项目,没有引用es客户端,直接使用的http的方式进行连接的,方式比较简单,但是依赖较少,一个比较小的项目,部署方便

业务也很简单就是把数据库中的数据读到es中,然后在做几个接口读es中的数据

版本

es版本 6.8.11

springboot 2.6.3

java 8

依赖

只有web和mysql的依赖,别的不需要

这里就不作介绍了,如果有需要可以私信我

开始

配置

这个是放到yml文件中的配置 就是es的地址

  es:
    url: http://127.0.0.1:9200/
    name: elastic
    password: 1234567890
    index: es_index
    searchSize: 1000
    version: 6.8.11

连接es

使用了这个类

RestTemplate restTemplate;
header

其中name和password就是配置中的

public HttpHeaders header() {
    HttpHeaders httpHeaders = new HttpHeaders();
    httpHeaders.setContentType(MediaType.APPLICATION_JSON);
    httpHeaders.set("authorization", "Basic " + (new BASE64Encoder().encode((name + ":" + password).getBytes()).replaceAll("\n", "")));
    return httpHeaders;
}
查询

esUrl 是es的地址

index 就是索引

param 就是参数

response.getBody() 返回的是一个json对象 自己根据内容解析一下即可

public JSONObject search(JSONObject param) {
    String url = esUrl + "/" + index + "/_search";
    HttpEntity httpEntity = new HttpEntity(param.toJSONString(), header());
    ResponseEntity<JSONObject> response = restTemplate.exchange(url, HttpMethod.POST, httpEntity, JSONObject.class);
    return response.getBody();
}
删除
public void deleteById(String id) {
    String url = esUrl + "/" + index + "/_doc/" + id;
    restTemplate.delete(url);
}
更新
public JSONObject updateEsById(String id, JSONObject param) {
    String url =  esUrl + "/" + index + "/_doc/" + id + "/_update";
    HttpEntity httpEntity = new HttpEntity(param.toJSONString(), header());
    ResponseEntity<JSONObject> response = restTemplate.exchange(url, HttpMethod.POST, httpEntity, JSONObject.class);
    return response.getBody();

}
保存
public void saveById(String id, JSONObject json) {
    String url = esUrl + "/" + index + "/_doc/" + id;
    HttpEntity httpEntity = new HttpEntity(json.toJSONString(), header());
    ResponseEntity<JSONObject> response = restTemplate.exchange(url, HttpMethod.POST, httpEntity, JSONObject.class);
    JSONObject ret = response.getBody();
}
补充

不同的版本是有差异的,具体可以在使用中根据报错进行调整

举例

es6.*版本的更新语句是这样的

esUrl + "/" + index + "/_doc/" + id + "/_update";

es7.*的是这样的

 esUrl + "/" + index + "/_update/" + id + "?refresh=true"

最后

整体的就是这样,其实主要是是restTemplate的使用,相对于es客户端使用比较简单一下(个人认为,主要是es用的不是很多)

如果大家有疑问和需要我可以后期就行补充文章来源地址https://www.toymoban.com/news/detail-827524.html

到了这里,关于springboot java 项目连接es的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • spring boot es | spring boot 整合elasticsearch | spring boot整合多数据源es

    目录 Spring Boot与ES版本对应 Maven依赖 配置类 使用方式 @Test中注入方式 @Component中注入方式 查询文档 实体类 通过ElasticsearchRestTemplate查询 通过JPA查询 保存文档 参考链接 项目组件版本: Spring Boot:2.2.13.RELEASE Elasticsearch:6.8.0 JDK:1.8.0_66 Tips: 主要看第3列和第5列,根据ES版本选择

    2023年04月18日
    浏览(56)
  • Java(一):创建 Spring Boot 项目并实现连接操作MySQL数据库

    MySQL 命令 Maven 相关地址 下载地址: https://maven.apache.org/ maven配置方法地址: https://developer.aliyun.com/mvn/guide 仓库搜索地址: https://mvnrepository.com/ https://repo.maven.apache.org/ maven 本地配置 conf/settings.xml 下载 idea 并配置本地环境 maven Maven 构建 生命周期 Maven 的构建 生命周期 包括 三

    2024年02月07日
    浏览(65)
  • 【Elasticsearch学习笔记五】es常用的JAVA API、es整合SpringBoot项目中使用、利用JAVA代码操作es、RestHighLevelClient客户端对象

    目录 一、Maven项目集成Easticsearch 1)客户端对象 2)索引操作 3)文档操作 4)高级查询 二、springboot项目集成Spring Data操作Elasticsearch 1)pom文件 2)yaml 3)数据实体类 4)配置类 5)Dao数据访问对象 6)索引操作 7)文档操作 8)文档搜索 三、springboot项目集成bboss操作elasticsearch

    2023年04月09日
    浏览(48)
  • 知识点13--spring boot整合elasticsearch以及ES高亮

    本章知识点沿用知识点12的项目,介绍如何使用spring boot整合ES,没有ES的去我主页 各类型大数据集群搭建文档--大数据原生集群本地测试环境搭建三 中可以看到ES如何搭建 不管你有没有ES,最好是没有,因为一定要知道一点,一定要去官网查一下你当前用的spring boot data es的版

    2024年02月12日
    浏览(50)
  • spring boot +springboot集成es7.9.1+canal同步到es

    未经许可,请勿转载。 其实大部分的代码是来源于 参考资料来源 的 主要代码实现 ,我只是在他的基础上增加自定义注解,自定义分词器等。需要看详细源码的可以去看 主要代码实现 ,结合我的来使用。 有人会问为什么需要自定义注解,因为elasticsearch7.6 索引将去除type 没

    2023年04月11日
    浏览(82)
  • Spring Boot中Elasticsearch的连接配置、原理与使用

    Elasticsearch是一种开源的分布式搜索和数据分析引擎,它可用于全文搜索、结构化搜索、分析等应用场景。在Spring Boot中,我们可以通过Elasticsearch实现对数据的搜索和分析。本文将介绍Spring Boot中Elasticsearch的连接配置、原理和使用方法。 在Spring Boot中,我们可以通过引入Elast

    2024年02月11日
    浏览(36)
  • spring boot集成Elasticsearch-SpringBoot(25)

      搜索引擎(search engine )通常意义上是指:根据特定策略,运用特定的爬虫程序从互联网上搜集信息,然后对信息进行处理后,为用户提供检索服务,将检索到的相关信息展示给用户的系统。   而我们讲解的是捜索的索引和检索,不涉及爬虫程序的内容爬取。大部分公司

    2023年04月09日
    浏览(110)
  • spring data elasticsearch: 设置保活策略|长时间不连接es,报错超时连接

    java client长时间没有连接es后,再次调用访问接口,报错连接超时 以下方法实测在 spring-data-elasticsearch 4.2.10 和 spring-data-elasticsearch 3.2.12.RELEASE 环境下有效 1、因为问题的原因是长时间没有连接导致的,最直接、常见的解决方案就是定期的去调用连接es,以此保证连接不会中断,

    2024年02月11日
    浏览(36)
  • tidb Cloud 连接spring boot 项目

    一、 免费试用tidbitcloud TiDB Cloud Documentation | PingCAP Docs 1.github账号登录  2.创建集群 3.点击对应集群cludter0 导入数据  导入 本地导入只支持csv文件,其他导入需要AWZ账号使用S3云存储   二、连接spingboot项目 选择java,复制下面的jdbc 下载CA证书:   配置spring boot 项目里的url   

    2024年01月17日
    浏览(34)
  • [Spring boot] Spring boot 整合RabbitMQ实现通过RabbitMQ进行项目的连接

     🍳作者:天海奈奈 💭眼过千遍不如手锤一遍:推荐一款模拟面试,斩获大厂 o f f e r ,程序员的必备刷题平台 − − 牛客网  👉🏻点击开始刷题之旅 目录 什么是RabbitMQ   消息队列:接受并转发消息,类似于快递公司 消息队列的优点 消息队列的特性 RabbitMQ特点 RabbitMQ核

    2024年01月24日
    浏览(82)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包