9.1. Spring Data ElasticSearch 简介
什么是 spring data elasticSearch ?
Spring Data ElasticSearch 基于 spring data API 简化 elasticSearch 操作 , 将原始操作 elasticSearch 的客户端 API 进行封装
官方网站:http://projects.spring.io/spring-data-elasticsearch/
下载官方规范文档
Maven 坐标
[AppleScript] 纯文本查看 复制代码
01 02 03 04 05 06 07 08 09 10 11 12 13 |
|
9.2. Spring Data ElasticSearch 入门案例
1、 创建 maven 工程
2、 基于 maven 导入坐标
Spring data elasticsearch 对 elasticsearch api 简化封装
导入 spring-test 和 junit 编写测试用例
Slf4j-log4j 日志包
3、 在 src/main/resources 下建立 applicationContext.xml 和 log4j.properties 引入 spring data elasticsearch 名称空间
4、 创建 domain、dao、service 包
5、 编写 DAO
编写 DAO 自动操作 elasticsearch 继承 ElasticsearchRepository 接口
配置 applicationContext.xml
6、 编写 Service
配置 applicationContext.xml
7、 配置 applicationContext.xml 连接 elasticsearch
8、 索引和映射如何创建 --- 基于 spring data elasticsearch 注解 在使用 spring data elasticsearch 开发, 需要将索引和映射信息 配置实体类上面
@Document 文档对象 (索引信息、文档类型 )
@Id 文档主键 唯一标识
@Field 每个文档的字段配置(类型、是否分词、是否存储、分词器 )
通过 ElasticsearchTemplate 创建索引和添加映射
错误: 导包冲突
java.lang.NoClassDefFoundError: org/springframework/core/ResolvableTypeProvider
解决: spring 导包版本要一致
错误: MapperParsingException[No type specified for field [title]]
解决: 配置类型
9、 Spring data Search CRUD 操作
CurdRepository 提供增删改查 save、delete、findAll 、findOne
PagingAndSortingRepository 提供分页和排序
10、 条件查询 (分页)
查询标题方法
分页条件查询,只需要在查询方法中,添加 Pageable 对象排序条件查询,只需要在查询方法中,添加 Sort 对象