SpringData-ElasticSearch入门

文章目录

  • 1、创建demo工程
  • 2、application.properties
  • 3、Goods 实体类
  • 4、EsDemoApplicationTests 测试类
  • 5、pom.xml
  • 6、查看索引库
  • 7、查看单个索引(数据库)
  • 8、从goods索引中检索出符合特定搜索条件的文档(或记录)

1、创建demo工程

在这里插入图片描述
在这里插入图片描述

2、application.properties

spring.application.name=es-demo
spring.elasticsearch.uris=http://192.168.74.148:9200
spring.elasticsearch.username=elastic
spring.elasticsearch.password=123456

3、Goods 实体类

package com.atguigu.es.demo.pojo;import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import org.springframework.data.annotation.Id;
import org.springframework.data.elasticsearch.annotations.Document;
import org.springframework.data.elasticsearch.annotations.Field;
import org.springframework.data.elasticsearch.annotations.FieldType;
@Data
@AllArgsConstructor
@NoArgsConstructor
@Document(indexName = "goods")
public class Goods {@Idprivate Long id;@Field(type = FieldType.Text,analyzer = "ik_max_word")private String title;@Field(type = FieldType.Keyword,index = false)private String image;@Field(type = FieldType.Integer)private Integer price;@Field(type = FieldType.Keyword)private String brand;@Field(type = FieldType.Keyword)private String category;
}

4、EsDemoApplicationTests 测试类

package com.atguigu.es.demo;import com.atguigu.es.demo.pojo.Goods;
import org.junit.jupiter.api.Test;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.data.elasticsearch.client.elc.ElasticsearchTemplate;
import org.springframework.data.elasticsearch.core.IndexOperations;@SpringBootTest
class EsDemoApplicationTests {@Autowiredprivate ElasticsearchTemplate elasticsearchTemplate;@Testvoid contextLoads() {// 获取Goods类对应的索引操作对象IndexOperations indexOps = this.elasticsearchTemplate.indexOps(Goods.class);// 创建索引indexOps.create();// 创建映射indexOps.putMapping();}}

5、pom.xml

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd"><modelVersion>4.0.0</modelVersion><parent><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-parent</artifactId><version>3.0.5</version><relativePath/> <!-- lookup parent from repository --></parent><!-- Generated by https://start.springboot.io --><!-- 优质的 spring/boot/data/security/cloud 框架中文文档尽在 => https://springdoc.cn --><groupId>com.atguigu</groupId><artifactId>es-demo</artifactId><version>0.0.1-SNAPSHOT</version><name>es-demo</name><description>es-demo</description><url/><licenses><license/></licenses><developers><developer/></developers><scm><connection/><developerConnection/><tag/><url/></scm><properties><java.version>17</java.version></properties><dependencies><dependency><groupId>org.projectlombok</groupId><artifactId>lombok</artifactId></dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-data-elasticsearch</artifactId></dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-test</artifactId><scope>test</scope></dependency></dependencies><build><plugins><plugin><groupId>org.springframework.boot</groupId><artifactId>spring-boot-maven-plugin</artifactId></plugin></plugins></build></project>

6、查看索引库

在这里插入图片描述

7、查看单个索引(数据库)

GET /goods
{"goods": {"aliases": {},"mappings": {"properties": {"_class": {"type": "keyword","index": false,"doc_values": false},"brand": {"type": "keyword"},"category": {"type": "keyword"},"image": {"type": "keyword","index": false},"price": {"type": "integer"},"title": {"type": "text","analyzer": "ik_max_word"}}},"settings": {"index": {"routing": {"allocation": {"include": {"_tier_preference": "data_content"}}},"refresh_interval": "1s","number_of_shards": "1","provided_name": "goods","creation_date": "1724723254472","number_of_replicas": "1","uuid": "vBsgfYlfRjKs6uSISXbxtw","version": {"created": "8080299"}}}}
}

8、从goods索引中检索出符合特定搜索条件的文档(或记录)

GET /goods/_search
{"took": 2,"timed_out": false,"_shards": {"total": 1,"successful": 1,"skipped": 0,"failed": 0},"hits": {"total": {"value": 0,"relation": "eq"},"max_score": null,"hits": []}
}

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/410709.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

ctfhub-web-SSRF通关攻略

一、内网访问 1.打开ctfhub给的环境地址 2.观察题目 发现让我们访问127.0.0.1下的flag.php 在地址栏后面有一个url参数 ?urlhttp://127.0.0.1/flag.php 提交即可 二、伪协议读取文件 1.打开ctfhub给的环境 2.观察题目 发现让我们读取flag.php文件 读取文件用到的协议是…

mathtype 公式编号 添加章节号 章节编号错乱 解决方法

1 怎么添加编号 左编号方法和右编号一样。 打开word软件,选择mathtype工具,点击右编号以后会打开mathtype软件界面,在mathtype软件界面中对于公式进行编写,编写完成后退出并且保存,就可以完成编号添加。 如果是对已有的公式进行编写的话,则通过ctrl+A进行全文选择,选择…

基于SpringBoot+Vue实现的高校心里辅导(咨询)管理系统设计与实现

本高校心理教育辅导系统的开发基于springboot框架&#xff0c;采用Java技术&#xff0c;同时使用MYSQL数据库对系统数据进行储存&#xff0c;充分保证系统数据的安全性和稳定性。系统根据高校心理教育辅导的需求开发功能模块&#xff0c;实现对信息数据的添加、删除、修改、查询…

前端项目部署到服务器上(nginx)

我这个之前已经部署过项目&#xff0c;所以要进行这个操作 docker imagedocker rm -f nginx //用于强制删除名为“nginx”的容器docker ps //用于列出当前正在运行的Docker容器docker volume -fdocker volume prune //用于删除所有未使用的Docker数据卷&#xff0c;‌释放存…

OpenCV绘图函数(2)绘制圆形函数circle()的使用

操作系统&#xff1a;ubuntu22.04 OpenCV版本&#xff1a;OpenCV4.9 IDE:Visual Studio Code 编程语言&#xff1a;C11 算法描述 绘制一个圆。 cv::circle 函数用于绘制一个给定中心和半径的简单圆或填充圆。 函数原型 void cv::circle (InputOutputArray img,Point cen…

驱动:mknod-misc 杂项自动

一、杂项设备驱动 #include <linux/init.h> #include <linux/kernel.h> #include <linux/fs.h> #include <linux/module.h> #include <linux/device.h> #include <asm/io.h> #include <asm/string.h> #include <asm/uaccess.h>…

简易指南:迅速构建个性化RAG(Retrieval-Augmented Generation)应用

前面的章节&#xff0c;我们已经完成了可用的基于知识库回答的ai助手&#xff0c;尽管RAG容易上手&#xff0c;但是要真正掌握其精髓却颇有难度&#xff0c;实际上&#xff0c;建立一个的有效的RAG系统不仅仅是将文档放入向量数据库并叠加一个llm模型那么简单&#xff0c;这种方…

心觉:赚钱是修行最快的一种方式

Hi&#xff0c;我是心觉&#xff0c;与你一起玩转潜意识、脑波音乐和吸引力法则&#xff0c;轻松搞定人生挑战&#xff0c;实现心中梦想&#xff01; 挑战日更写作152/1000(完整记录在下面) 公门洞开纳百川 众心逐梦越千山 号召引领潜力绽 心觉潜意识无间 人生就是一场体…

【网络】P2P打洞原理

本文首发于 ❄️慕雪的寒舍 1. 引入 如果你折腾过NAS或者BT下载等等玩意&#xff0c;可能听说过“P2P打洞”这一技术名词。简单来说&#xff0c;P2P打洞可以让我们直接在外网访问内网的设备&#xff0c;从而让没有公网IP的家庭设备也能获得“公网直连”的速度。 比如绿联、极…

ES 根据条件删除文档

随着业务量的增多&#xff0c;es中数据越来越多&#xff0c;但有些数据其实后期并无业务用途&#xff0c;可直接做物理删除&#xff0c;程序里做兼容&#xff0c;但历史每个月的索引里的数据需要处理这部分冗余数据。 es提供_delete_by_query 根据查询条件进行删除的操作&…

呼入的电话通过http接口转接(mod_cti基于FreeSWITCH)

文章目录 前言联系我们配置流程1.呼入路由配置2.呼入安全配置3.配置生效规则4. 动作解析动作说明接口返回说明 5.创建拨号方案并启用 前言 呼叫流程&#xff1a;任意手机呼叫指定的号码&#xff0c;进入到中间件中&#xff0c;然后通过接口转接到对应的坐席分机中。接口作用&a…

警惕!血脂偏高,这些身体信号你不可不知!

在快节奏的现代生活中&#xff0c;高血脂&#xff0c;这个看似“沉默的杀手”&#xff0c;正悄然威胁着越来越多人的健康。它不像感冒发烧那样有明显的症状&#xff0c;却能在不知不觉中侵蚀血管&#xff0c;增加心血管疾病的风险。今天&#xff0c;我们就来揭开高血脂的神秘面…

探索最佳无代码低代码工具:加速 Web 应用开发

Web 应用无处不在。 从用户友好的在线表单到功能强大的企业级解决方案&#xff0c;Web 应用的多样性和复杂性不断增长。 随着低代码无代码技术的发展&#xff0c;构建一个 Web 应用的门槛正在大大降低。 对于刚踏入 Web 开发领域的人员来说&#xff0c;正确的低代码/无代码工…

【AI大模型】提示词(Prompt)全面解析

文章目录 前言前置准备&#xff08;非常重要&#xff09;一、Prompt 提示词介绍1.1 Prompt 的重要性 二、Prompt 提示词元素构成与实践2.1 关键字2.2 上下文2.3 格式要求2.4 实践示例 三、Prompt 提示词编写原理3.1 清晰性3.2 具体性3.3 适应性 四、Prompt 提示词编写常用的分隔…

游戏开发设计模式之装饰模式

目录 装饰模式在游戏开发中的具体应用案例是什么&#xff1f; 如何在Unity中实现装饰模式以动态扩展游戏对象的功能&#xff1f; 装饰模式与其他设计模式&#xff08;如适配器模式、代理模式&#xff09;相比&#xff0c;有哪些优势和劣势&#xff1f; 优势 劣势 与适配器…

错误使用 gretna_GUI_PreprocessInterface>RunBtn_Callback

&#x1f3c6;本文收录于《CSDN问答解惑-专业版》专栏&#xff0c;主要记录项目实战过程中的Bug之前因后果及提供真实有效的解决方案&#xff0c;希望能够助你一臂之力&#xff0c;帮你早日登顶实现财富自由&#x1f680;&#xff1b;同时&#xff0c;欢迎大家关注&&收…

【IC设计】跨时钟异步处理系列——单比特跨时钟

文章目录 建立时间和保持时间单比特信号的跨时钟处理慢时钟域的信号传输到快时钟域打两拍 快时钟域的信号传输到慢时钟域方案一 脉冲展宽同步 (打拍打拍&#xff0c;进行或)代码原理图 方案二 脉冲电平检测双触发器同步边沿检测代码原理图 建立时间和保持时间 所谓的建立时间或…

spring boot(学习笔记第十九课)

spring boot(学习笔记第十九课) Spring boot的batch框架&#xff0c;以及Swagger3(OpenAPI)整合 学习内容&#xff1a; Spring boot的batch框架Spring boot的Swagger3&#xff08;OpenAPI&#xff09;整合 1. Spring boot batch框架 Spring Batch是什么 Spring Batch 是一个…

<数据集>TACO垃圾识别数据集<目标检测>

数据集格式&#xff1a;VOCYOLO格式 图片数量&#xff1a;6004张 标注数量(xml文件个数)&#xff1a;6004 标注数量(txt文件个数)&#xff1a;6004 标注类别数&#xff1a;18 标注类别名称&#xff1a;[Crankshaft, Centrifugal_body, Washer_container, Circlip_containe…

基于Java的高校学生工作系统的设计与实现(论文+源码)_kaic

摘 要 本系统为高校学生工作管理系统&#xff0c;系统能够为高校提供便捷的学生信息管理功能。该系统采用 Java 语言编写&#xff0c;系统采用MVC架构进行设计&#xff0c;通过Servlet和JSP等技术实现前后端数据交互和页面呈现&#xff1b;采用 Mysql作为后台数据库&#xff0…