Elasticsearch
Elasticsearch 是一个实时的分布式搜索分析引擎, 它能让你以一个之前从未有过的速度和规模,去探索你的数据。 它被用作全文检索、结构化搜索、分析以及这三个功能的组合:
一、Elasticsearch概念
一个ElasticSearch 集群可以 包含多个*索引* ,相应的每个索引可以包含多个 类型 。 这些不同的类型存储着多个 文档 ,每个文档又有 多个 属性 。
我们可以类比为:索引-数据库;类型-表;文档-表中的记录;属性-列。
根据官方文档学习:
https://www.elastic.co/guide/cn/elasticsearch/guide/current/getting-started.html
二、整合SpringBoot
1、在pom.xml文件中引入依赖
注意:elasticsearch与springdata版本对应的问题
2、在主配置文件中配置
// 可以配置的信息在 ElasticsearchProperties中查看
// 集群节点
spring.data.elasticsearch.cluster-nodes=192.168.36.130:9300
// 集群名称
spring.data.elasticsearch.cluster-name=docker-cluster
3、自动配置
==ElasticsearchRepository、==ElasticTemplate、jest,在这里我是用ElasticsearchRepository
- 自定义自己的xxxRepository
public interface BookRepository extends ElasticsearchRepository<Book,Integer> {
//参照官方文档。
List<Book> findBookByNameLike(String name);
}
- 属性需要注释文档对象,指明索引、类型
@Document(indexName = "ys",type = "book")
public class Book {
private int id;
private String name;
private String author;
private String content;
- 注入自定义的xxxRepository