一、ElasticSearch tutorial demo

example 1. 单机、local、CRUD操作

实现方式:

SpringBoot + ElasticSearch

拷贝的小demo,原文地址:https://www.journaldev.com/18148/spring-boot-elasticsearch

实现的功能:

通过 RestHighLevelClient 对 ElasticSearch 中的document,进行CRUD操作。原文中没实现依据index获取所有document功能,我已经添加好了。还添加了全文检索的功能,以及一些注释。

tutorial demo放在了我个人的github地址中:

https://github.com/lihao5257/elasticSearch-demo.git

验证效果时,需要的memo:

1.确认ES启动:127.0.0.1:9200
2.下面是新加document或是修改是用到的Json:
[
    {
        "author": "JournalDev",
        "price": 199.1,
        "id": "87a3a002-c68a-488b-8172-2510c4be9d41",
        "title": "Java Always"
    },
    {
        "author": "JournalDev",
        "price": 299.1,
        "id": "7172b649-4846-47ad-a9d9-6e5b93302c46",
        "title": "Lee"
    },
    {
        "author": "JournalDev",
        "price": 799.1,
        "id": "96fe24ee-49fe-48a8-a7df-65866cbda618",
        "title": "Song"
    },
    {
        "author": "Tom",
        "price": 223.4,
        "title": "JiM Green"
    },
    {
        "author": "Sony Green",
        "price": 19.8,
        "title": "Harry Poart"
    },
    {
        "author": "Sony Green",
        "price": 19.8,
        "title": "Harry Poart 2"
    },
    {
        "author": "Sony Green",
        "price": 19.8,
        "title": "Harry Poart 3"
    }
]

3.获取所有documents:127.0.0.1:8080/books/allBooks
4.根据ID查询document:127.0.0.1:8080/books/id

推荐一个叫做Postman的工具,使用curl很方面。

二、跟文档学习

地址:https://www.elastic.co/guide/en/elasticsearch/client/java-rest/7.6/java-rest-high.html

参考的文档版本为7.6,选的目前release的最新版本。

里面的文档非常的全面,doucument api,search api,里面关于单次,多次查询,bulk操作,同步异步发送请求,讲解的非常清晰明白,我在这里就不再重新说明了。有不懂的地方,欢迎交流。我看了3个多小时,将客户端3节的api文档看完了,有些东西都是相通的,越看越会发现共同之处。

Elastic Search 学习之路(三)—— tutorial demo的更多相关文章

  1. Elastic Search 学习之路(一)

    一.基本概念及缘由 1.Sql vs nosql SQL:Structured Query Language Nosql:Not only SQL Relationship DB Relations: ...

  2. Elastic Search 学习之路(二)——inverted index(反向索引)

    这是篇翻译文,图画的挺有意思. Elastic使用非常特殊的数据结构,称作反向索引.反向索引中,包括了一组document中出现的唯一的单词,和对应的单词,所出现的位置.反向索引是在ES中,docum ...

  3. 学习之路三十九:新手学习 - Windows API

    来到了新公司,一开始就要做个程序去获取另外一个程序里的数据,哇,挑战性很大. 经过两周的学习,终于搞定,主要还是对Windows API有了更多的了解. 文中所有的消息常量,API,结构体都整理出来了 ...

  4. Redis——学习之路三(初识redis config配置)

    我们先看看config 默认情况下系统是怎么配置的.在命令行中输入 config get *(如图) 默认情况下有61配置信息,每一个命令占两行,第一行为配置名称信息,第二行为配置的具体信息.     ...

  5. elastic search 学习笔记

    Elastic search在数据分析的应用中相当于一个数据库的搜索引擎. 跟MySQL类似,它有自己的查询语言,只不过不是关系型数据库,属于NoSQL. 可以根据索引从分布式服务器文件系统中快速存取 ...

  6. elastic search 学习 一

    初步阅读了elastic search 的文档,并使用command实践操作. 大概明白其概念模型.

  7. zigbee学习之路(三):按键的控制

    一.前言 通过前一次的实验,相信大家都已经对cc2530程序的编写有了一定的认识,这次我们来操作和实验的是cc2530上的按键模块. 二.原理分析 我们先来看一下按键的原理图: 根据原理图我们可以得出 ...

  8. 学习之路三十二:VS调试的简单技巧

    这段时间园子里讲了一些关于VS的快捷键以及一些配置技巧,挺好的,大家一起学习,一起进步. 这段时间重点看了一下关于VS调试技巧方面的书,在此记录一下学习的内容吧,主要还是一些比较浅显的知识. 1. 调 ...

  9. 交互原型设计软件axure rp学习之路(三)

    (三)Axure rp元件的触发事件 l  OnClick(点击时): 鼠标点击事件,除了动态面板的所有的其他元件的点击时触发.比如点击按钮. l  OnMouseEnter(鼠标移入时): 鼠标进入 ...

随机推荐

  1. phpmyadmin远程代码执行漏洞(CVE-2016-5734)

    简介 环境复现:https://github.com/vulhub/vulhub 线上平台:榆林学院内可使用协会内部的网络安全实验平台 phpMyAdmin是一套开源的.基于Web的MySQL数据库管 ...

  2. php递归无限查询上级或者下级

    $this->get_array($user['uid'],1); function get_array($user_id,$top=0){ $sql = 'SELECT * FROM ' . ...

  3. ①SpringCloud 实战:引入Eureka组件,完善服务治理

    简介 Netflix Eureka 是一款由 Netflix 开源的基于 REST 服务的注册中心,用于提供服务发现功能.Spring Cloud Eureka 是 Spring Cloud Netf ...

  4. 深度分析ReentrantLock源码及AQS源码,从入门到入坟,建议先收藏!

    一.ReentrantLock与AQS简介 在Java5.0之前,在协调对共享对象的访问时可以使用的机制只有synchronized和volatile.Java5.0增加了一种新的机制:Reentra ...

  5. Guitar Pro教程之组织小节

    上一章节我们讲述了关于Guitar Pro 7的主界面的相关功能的介绍,对于初学作曲,又是吉他的初学者,刚刚接触{cms_selflink page='index' text='Guitar Pro' ...

  6. 如何用OCR文字识别软件将PDF转换成Excel

    最近老板老是让小编处理PDF文件,这OCR识别软件咱也不懂,也不敢问,只能一字一字的码在Excel上,但是这波操作效率不高,还没完成任务,老板又发了一堆PDF文件需要处理,怎么办呢? 跟朋友说了这事后 ...

  7. MongoDB集群分片部署

    MongoDB中使用分片集群结构分布: 三个主要组件: Shard: 用于存储实际的数据块,实际生产环境中一个shard server角色可由几台机器组个一个replica set承担,防止主机单点故 ...

  8. kafka对接Rancher日志

    kafka对接Rancher日志 目录 kafka对接Rancher日志 概述 环境准备 正常对接kafka集群 1.helm添加bitnami库 2.下载 kafka 对应的chart压缩文件 3. ...

  9. Python GUI之Tkiner实战

    前言 Tkinter 是 Python 的标准 GUI 库.Python 使用 Tkinter 可以快速的创建 GUI 应用程序. 由于 Tkinter 是内置到 python 的安装包中.只要安装好 ...

  10. LeetCode周赛#213

    5554. 能否连接形成数组 题目链接 题意 给定整数数组 arr ,其中每个整数互不相同 .另有一个由整数数组构成的数组 pieces,其中的整数也互不相同 .请以 任意顺序 连接 pieces 中 ...