ElasticSearch 5.6.3 自定义封装API接口

2023-09-13 16:58:27
  1. 在实际业务中,查询 elasticsearch 时会遇到很多特殊查询,官方接口包有时不便利,特殊情况需要自定义接口,所以为了灵活使用、维护更新 编写了一套API接口,仅供学习使用

  2. 当前自定义API接口依赖 elasticsearch 5.6.3 版本,其它版本自行测试修改源码

  3. 同时为了更好的帮助读者使用,编写了一套查询文档,下载 casia-web (提取码:1234) jar 包,使用以下命令运行后,浏览器打开(http://localhost:8080/api)即可看到说明界面,注意 当前电脑环境需有 jdk 1.8 环境

    java -jar  casia-api-web-1.0.jar
    

    在这里插入图片描述

  4. 开始使用
    (1)下载 demo 工程, casia-elasticsearch-demo ,将 lib 下的 jar 包导入你的工程加载即可
    (2)在配置文件 application 中 配置 es 地址信息,支持多数据源引用,如下图:引入 web 和 data 两个数据源,在代码中初始化 CasiaEsSearch 对象,传入 “web” 为使用 web 数据源
    在这里插入图片描述
    (3)或者在初始化对象中直接传入es 地址
    在这里插入图片描述

  5. 查询案例
    如下图
    (1)casiaEsApi.search() 表示注入查询条件
    (2)addSort 为排序条件
    (3)setRange 为范围条件
    (4)setQueryKeyWords 为关键词条件
    (5)executeQueryInfo 执行查询
    (6)executeQueryInfo 执行查询
    (7)OutInfo.out(searchResult); 打印输出查询结果
    (8)setAggregations 聚合条件
    在这里插入图片描述

  6. 其余很多 API 操作接口,例如:嵌套查询、游标接续查询、地理位置聚合、矩阵计算、索引管理 等,这里不一 一叙述,读者有兴趣可自行研究

  7. 源代码也一并放出,独乐乐不如众乐乐,大家一起学习
    文章地址:https://blog.csdn.net/qq_33772352
    Github :
    casia-elasticsearch
    casia-util
    casia-http

更多推荐

计算机视觉与深度学习-经典网络解析-GoogLeNet-[北邮鲁鹏]

这里写目录标题GoogLeNet参考GoogLeNet模型结构创新点Inception结构,它能保留输入信号中的更多特征信息去掉了AlexNet的前两个全连接层,并采用了平均池化引入了辅助分类器GoogLeNetGoogLeNet的设计主要特点是引入了Inception模块,这是一种多尺度卷积结构,可以在不同尺度下进行

Leetcode.146 LRU 缓存

题目链接Leetcode.146LRU缓存mid题目描述请你设计并实现一个满足LRU(最近最少使用)缓存约束的数据结构。实现LRUCache类:LRUCache(intcapacity)以正整数作为容量capacitycapacitycapacity初始化LRU缓存intget(intkey)如果关键字keykeyke

JVM-环境准备&性能指标&基础知识

环境准备&性能指标&基础知识环境准备JDK—工具JDK(JavaDevelopmentKit)是用于开发Java应用程序的软件开发工具集合,包括了Java运行时的环境(JRE)、解释器(Java)、编译器(javac)、Java归档(jar)、文档生成器(Javadoc)等工具。简单的说我们要开发Java程序,就需要安

五十二.PPO算法原理和实战

基于表格的方法:动态规划法、蒙特卡罗法、时序差分法等。基于值函数近似的方法:DQN及其改进方法。两类方法都基本遵循了“策略评估-策略改进”交替循环的算法框架。基于值函数的算法在实际应用中也存在一些不足,如算法难以高效处理连续动作空间任务和只能处理确定性策略而不能处理随机策略等。强化学习的最终目标是获得最优策略。将策略本

这些PLC项目调试常见错误类型,你都了解吗?

各种品牌PLC都具有自我诊断功能,但PLC修理的技巧在于,充分运用该功能进行分析,然后精确寻找问题所在。整理了当PLC呈现反常报警时,PLC修理人员需要了解的8种常见错误类型。CPU反常CPU反常报警时,应查看CPU单元衔接于内部总线上的一切器材。具体方法是顺次替换可能存在问题的单元,找出问题单元,并作相应处理。存储器

Understanding the Security of ARM Debugging Features【TEE安全】

文章目录摘要引言贡献背景ARM、SoC制造商和OEMARM调试体系结构ARM调试验证信号ARMCoreSight体系结构ARM安全扩展调试体系结构的安全含义非侵入式调试侵入式调试总结调试真实设备中的身份验证信号目标设备开发板IOT设备商业云平台移动设备身份验证信号的状态身份验证信号的管理我们从TRM中学到了什么:我们从

Hbase工作原理

Hbase:HBase底层原理详解(深度好文,建议收藏)-腾讯云开发者社区-腾讯云Hbase架构图同一个列族如果有多个store,那么这些store在不同的regionHbase写流程(读比写慢)MemStoreFlushHbase读流程:先读blockCache,若命中了结果,则不读磁盘;若没有命中结果,那么同时读M

大数据驱动业务增长:数据分析和洞察力的新纪元

文章目录大数据的崛起大数据的特点大数据技术大数据驱动业务增长1.洞察力和决策支持2.个性化营销3.风险管理4.产品创新大数据分析的新纪元1.云计算和大数据示例代码:使用AWS的ElasticMapReduce(EMR)进行大数据分析。2.人工智能和机器学习示例代码:使用Python的Scikit-Learn库进行机器学

外国固定资产管理系统功能有哪些

很多公司都在寻找提高自己资产管理效益的方法。为了满足这一要求,国外的固定资产管理系统已经发展成多种形式。以下是国外一些常见的固定资产管理系统的特点:自动化和智能化:许多现代固定资产管理系统采用自动化和数字化技术,以简化流程,减少错误,提高数据准确性。这些系统通常包括电子库存管理、一键生成报告和实时跟踪资产位置。集成:国

机器学习:在线学习和离线学习区别

机器学习中的在线学习(OnlineLearning)和离线学习(OfflineLearning)是两种不同的学习方式,它们在数据处理和模型更新方面有着明显的区别。以下是它们的主要区别:数据获取方式:在线学习:在在线学习中,模型是不断地从数据流中接收新的样本并进行学习。这意味着模型会随着时间的推移不断更新,以适应新的数据

深度学习:pytorch nn.Embedding详解

目录1nn.Embedding介绍1.1nn.Embedding作用1.2nn.Embedding函数描述1.3nn.Embedding词向量转化2nn.Embedding实战2.1embedding如何处理文本2.2embedding使用示例2.3nn.Embedding的可学习性1nn.Embedding介绍1.1

热文推荐