springboot检索之整合elasticsearch并使用spring-data操作

各种过时,版本不兼容,只能暂时将代码放在这先做参考了。

pom.xml

        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-data-elasticsearch</artifactId>
        </dependency>

Book.java

package com.gong.spingbootes.bean;

import org.springframework.data.elasticsearch.annotations.Document;
//这里必须指明索引名字和类型
@Document(indexName = "gong",type = "book")
public class Book {
    private Integer id;
    private String bookName;
    private String author;

    public Book(){}

    public Book(Integer id, String bookName, String author) {
        this.id = id;
        this.bookName = bookName;
        this.author = author;
    }

    @Override
    public String toString() {
        return "Book{" +
                "id=" + id +
                ", bookName=‘" + bookName + ‘\‘‘ +
                ", author=‘" + author + ‘\‘‘ +
                ‘}‘;
    }

    public Integer getId() {
        return id;
    }

    public void setId(Integer id) {
        this.id = id;
    }

    public String getBookName() {
        return bookName;
    }

    public void setBookName(String bookName) {
        this.bookName = bookName;
    }

    public String getAuthor() {
        return author;
    }

    public void setAuthor(String author) {
        this.author = author;
    }
}

BookRepository.java

package com.gong.spingbootes.repository;

import com.gong.spingbootes.bean.Book;
import org.springframework.data.elasticsearch.repository.ElasticsearchRepository;

import java.util.List;
//第一个泛型是对象类型,第二个泛型是book的主键
public interface BookRepository extends ElasticsearchRepository<Book,Integer>{   //这里的名字不是随意取的,而是根据查询需求来取的,具体可参考相关文档
    public List<Book> findByBookNameLike(String bookName);
}

application.properties

spring.data.elasticsearch.cluster-name=elasticsearch
spring.data.elasticsearch.cluster-nodes=192.168.124.22
#这两玩意过时了

SpringbootEsApplicationTests.java

package com.gong.spingbootes;

import com.gong.spingbootes.bean.Article;
import com.gong.spingbootes.bean.Book;
import com.gong.spingbootes.repository.BookRepository;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.test.context.junit4.SpringRunner;

@RunWith(SpringRunner.class)
@SpringBootTest
public class SpingbootEsApplicationTests {

    @Autowired
    BookRepository bookRepository;

    @Test
    public void contextLoads() {
    }
  //添加索引
    @Test
    public void index() {
        bookRepository.index(new Book(1,"java","德玛"));
    }  //进行查询
    @Test
    public void search() {
        bookRepository.findByBookNameLike("ja");
    }
}

原文地址:https://www.cnblogs.com/xiximayou/p/12298321.html

时间: 2024-08-30 12:24:42

springboot检索之整合elasticsearch并使用spring-data操作的相关文章

SpringBoot检索篇Ⅳ --- 整合ElasticSearch

知识储备:  关于ElasticSearch的基本使用我已经在上一篇文章介绍过了(传送门),本篇文章主要讲述的是SpringBoot与ElasticSearch的整合以及简单的使用. 原文地址:https://www.cnblogs.com/wangxiayun/p/10271122.html

Spring Data操作Redis详解

Spring Data操作Redis详解 Redis是一种NOSQL数据库,Key-Value形式对数据进行存储,其中数据可以以内存形式存在,也可以持久化到文件系统.Spring data对Redis进行了很好的封装,用起来也是十分的得心应手.Redis 是一个开源(BSD许可)的,内存中的数据结构存储系统,它可以用作数据库.缓存和消息中间件. 它支持多种类型的数据结构,如 字符串(strings), 散列(hashes), 列表(lists), 集合(sets), 有序集合(sorted se

elasticsearch之hello(spring data整合)

1.书写pom.xml文件 <dependencies> <dependency> <groupId>org.springframework.data</groupId> <artifactId>spring-data-elasticsearch</artifactId> <version>2.0.4.RELEASE</version> </dependency> <dependency>

Spring Data操作Redis时,发现key值出现 \xac\xed\x00\x05t\x00\tb

原文链接:http://blog.csdn.net/yunhaibin/article/details/9001198 最近在研究redis,以及spring data对redis的支持发现了一个奇怪的现象 先说现象吧,通过redisTemplate下的opsForHash方法存储hash类型的值,操作成功以后,去redis控制台显示keys * 的时候,发现一个奇怪的现象,插入的hash类型的key前面会有一堆的\xac\xed\x00\x05t\x00\tb 这种东西,见图1 (图1) 看见

SpringBoot整合Elasticsearch框架

新建SpringBoot项目: 修改pom.xml文件,引入spring-boot-data-elasticsearch Jar 包: <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-elasticsearch</artifactId> <version>2.2.2.RELEASE</ver

使用JAVA操作ElasticSearch(Java API 和Spring Data ElasticSearch)

Java API 我的ElasticSearch集群的版本是6.2.4,导入elasticsearch相关的maven依赖也是6.2.4,不同版本的api可能会有差异 一:maven依赖 <!--elasticsearch核心依赖--> <dependency> <groupId>org.elasticsearch</groupId> <artifactId>elasticsearch</artifactId> <version

玩转 SpringBoot 2 之整合 JWT 下篇

前言 在<玩转 SpringBoot 2 之整合 JWT 上篇> 中介绍了关于 JWT 相关概念和JWT 基本使用的操作方式.本文为 SpringBoot 整合 JWT 的下篇,通过解决 App 用户登录 Session 问题的实战操作,带你更深入理解 JWT.通过本文你还可以了解到如下内容: SpringBoot 使用拦截器的实际应用 SpringBoot 统一异常处理 SpringBoot 快速搭建 RESTful Api 关于生成JWT 操作请参考 <玩转 SpringBoot 2

Spring Data ElasticSearch的使用十个小案例

1.什么是Spring Data Spring Data是一个用于简化数据库访问,并支持云服务的开源框架.其主要目标是使得对数据的访问变得方便快捷,并支持map-reduce框架和云计算数据服务. Spring Data可以极大的简化JPA的写法,可以在几乎不用写实现的情况下,实现对数据的访问和操作.除了CRUD外,还包括如分页.排序等一些常用的功能. 2.什么是Spring Data ElasticSearch Spring Data ElasticSearch 基于 spring data

Spring Data ElasticSearch的使用

1.什么是Spring Data Spring Data是一个用于简化数据库访问,并支持云服务的开源框架.其主要目标是使得对数据的访问变得方便快捷,并支持map-reduce框架和云计算数据服务. Spring Data可以极大的简化JPA的写法,可以在几乎不用写实现的情况下,实现对数据的访问和操作.除了CRUD外,还包括如分页.排序等一些常用的功能. 2.什么是Spring Data ElasticSearch Spring Data ElasticSearch 基于 spring data