零、概述
Spring Data Elasticsearch项目提供了与Elasticsearch搜索引擎的集成。Spring Data Elasticsearch的关键功能区域是一个POJO中心模型,用于与Elastichsearch Documents进行交互并轻松编写存储库样式数据访问层。
0.1、主要功能
1.Spring配置支持使用基于Java的@Configuration类或ES客户端实例的XML名称空间。
2.ElasticsearchTemplate帮助类,提高执行常见ES操作的生产力。包括文档和POJO之间的集成对象映射。
3.功能丰富的对象映射与Spring的转换服务集成
4.自动实现Repository接口,包括支持自定义find[查找器]方法。
5.CDI支持存储库
maven使用上节已说明
0.2、文档说明
参看地址:https://docs.spring.io/spring-data/elasticsearch/docs/3.0.4.RELEASE/reference/html/
0.3、元数据地址
Version Control - https://github.com/spring-projects/spring-data-elasticsearch
Bugtracker - https://jira.spring.io/browse/DATAES
Release repository - https://repo.spring.io/libs-release
Milestone repository - https://repo.spring.io/libs-milestone
Snapshot repository - https://repo.spring.io/libs-snapshot
git:https://github.com/spring-projects/spring-data-elasticsearch
官方发布说明:https://projects.spring.io/spring-data-elasticsearch/
一、Spring Data Repositories
本节信息来自Spring Data Commons模块,支持Java Persistence API (JPA) module
1.1、核心概念
CrudRepository为正在管理的实体类提供了复杂的CRUD功能。
示例一、CrudRepository接口【基本上都是字面含义】
public interface CrudRepository<T, ID extends Serializable> extends Repository<T, ID> { <S extends T> S save(S entity); Optional<T> findById(ID primaryKey); Iterable<T> findAll(); long count(); void delete(T entity); boolean existsById(ID primaryKey); // … more functionality omitted. }