Elastic Search搜索引擎如何在在SpringBoot中实践

本文介绍了在SpringBoot项目中集成Elasticsearch的过程,包括环境配置、项目创建、依赖管理、代码组织以及实际的数据增删查改操作。通过使用可视化插件elasticsearch-head辅助观察数据,展示了如何进行简单的搜索测试。
摘要由CSDN通过智能技术生成

实验环境

  • ES版本:5.3.0
  • spring bt版本:1.5.9

首先当然需要安装好elastic search环境,最好再安装上可视化插件 elasticsearch-head来便于我们直观地查看数据。


Spring工程创建

这部分没有特殊要交代的,但有几个注意点一定要当心

  • 注意在新建项目时记得勾选web和NoSQL中的Elasticsearch依赖,来张图说明一下吧:

创建工程时勾选Nosql中的es依赖选项

项目自动生成以后pom.xml中会自动添加spring-boot-starter-data-elasticsearch的依赖:

        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-data-elasticsearch</artifactId>
        </dependency>1234
  • 本项目中我们使用开源的基于restful的es java客户端jest,所以还需要在pom.xml中添加jest依赖:
        <dependency>
            <groupId>io.searchbox</groupId>
            <artifactId>jest</artifactId>
        </dependency>1234
  • 除此之外还必须添加jna的依赖:
        <dependency>
            <groupId>net.java.dev.jna</groupId>
            <artifactId>jna</artifactId>
        </dependency>1234

否则启动spring项目的时候会报JNA not found. native methods will be disabled.的错误:

JNA not found. native methods will be disabled.

  • 项目的配置文件application.yml中需要把es服务器地址配置对
server:
  port: 6325

spring:
  elasticsearch:
    jest:
      uris:
      - http://113.209.119.170:9200  # ES服务器的地址!
      read-timeout: 5000123456789

代码组织

我的项目代码组织如下:
项目代码组织

各部分代码详解如下,注释都有:

  • Entity.java
package com.hansonwang99.springboot_es_demo.entity;
import java.io.Serializable;
import org.springframework.data.elasticsearch.annotations.Document;

public class Entity implements Serializable{
   

    private static final long serialVersionUID = -763638353551774166L;

    public static final String INDEX_NAME = "index_entity";

    public static final String TYPE = "tstype";

    private Long id;

    private String name;

    public Entity() {
   
        super();
    }

    public Entity(Long id, String name) {
   
        this
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值