elasticsearchTemplate操作es
ElasticsearchTemplate是spring对java api的封装
maven依赖:
<dependency>
<groupId>org.springframework.data</groupId>
<artifactId>spring-data-elasticsearch</artifactId>
<version>3.1.8.RELEASE</version>
</dependency>
spring bean配置 spring-es.xml
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:elasticsearch="http://www.springframework.org/schema/data/elasticsearch"
xmlns:context="http://www.springframework.org/schema/context"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd
http://www.springframework.org/schema/data/elasticsearch http://www.springframework.org/schema/data/elasticsearch/spring-elasticsearch.xsd
http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd"> <elasticsearch:transport-client id="client"
cluster-nodes="192.168.71.137:9300"
cluster-name="large-data-transfer-platform"/>
<bean name="elasticsearchTemplate"
class="org.springframework.data.elasticsearch.core.ElasticsearchTemplate">
<constructor-arg ref="client"/>
</bean>
</beans>
autowired注入实例:
@Autowired
private ElasticsearchTemplate elasticsearchTemplate;
分页查询demo:
BoolQueryBuilder boolQuery = QueryBuilders.boolQuery();
if (params.get("uuid") != null && StringUtils.isNotBlank(params.get("uuid").toString())) {
boolQuery.must(QueryBuilders.matchPhraseQuery("article_id", params.get("uuid")));
}
if (params.get("subject_id") != null && StringUtils.isNotBlank(params.get("subject_id").toString())) {
boolQuery.must(QueryBuilders.matchPhraseQuery("subject_id", params.get("subject_id")));
}
if (params.get("title_like") != null && StringUtils.isNotBlank(params.get("title_like").toString())) {
boolQuery.must(QueryBuilders.matchPhraseQuery("title", params.get("title_like")));
}
if (params.get("content_like") != null && StringUtils.isNotBlank(params.get("content_like").toString())) {
boolQuery.must(QueryBuilders.matchPhraseQuery("content", params.get("content_like")));
}
Pageable pageable= new PageRequest(Integer.parseInt(String.valueOf(params.get("start"))), Integer.parseInt(String.valueOf(params.get("limit"))),new Sort(Sort.Direction.DESC, "update_time"));
NativeSearchQuery searchQuery = new NativeSearchQueryBuilder()
.withIndices(centerIndexName)
.withTypes(centerArticleTypeName)
.withQuery(boolQuery)
.withPageable(pageable)
.build();
List<Map> maps = elasticsearchTemplate.queryForList(searchQuery, Map.class);
System.out.println(JSON.toJSONString(maps));
elasticsearchTemplate操作es的更多相关文章
- SpringBoot整合SpringDataElasticSearch操作ES
(1).添加starter依赖 <dependency> <groupId>org.springframework.boot</groupId> <artif ...
- springdata -----操作ES
一:配置springdata-Es elasticseach-JPA.xml <?xml version="1.0" encoding="UTF-8"?& ...
- Elasticsearch笔记五之java操作es
Java操作es集群步骤1:配置集群对象信息:2:创建客户端:3:查看集群信息 1:集群名称 默认集群名为elasticsearch,如果集群名称和指定的不一致则在使用节点资源时会报错. 2:嗅探功能 ...
- SpringBoot整合Jest操作ES
(1).添加依赖 <dependency> <groupId>io.searchbox</groupId> <artifactId>jest</a ...
- SpringBoot操作ES进行各种高级查询
SpringBoot整合ES 创建SpringBoot项目,导入 ES 6.2.1 的 RestClient 依赖和 ES 依赖.在项目中直接引用 es-starter 的话会报容器初始化异常错误,导 ...
- 07_Kibana界面操作ES
Kibana界面的API操作ES 1.创建索引 1.1 指定分片数量和备份数量 1.2 创建默认 2. 查看索引 2.1 查看单个索引设置 2.2 查看所有索引设置 3.文档管理 3.1 添加文档 3 ...
- es的查询、排序查询、分页查询、布尔查询、查询结果过滤、高亮查询、聚合函数、python操作es
今日内容概要 es的查询 Elasticsearch之排序查询 Elasticsearch之分页查询 Elasticsearch之布尔查询 Elasticsearch之查询结果过滤 Elasticse ...
- 【ELK】7. elasticsearch linux上操作es命令详解
========== 1.检查ES节点是否正常启动 curl http://192.168.6.16:9200 正常状态: 非正常状态: 1>确保服务是不是正常启动了,端口用的是哪个 2> ...
- python 操作es
Elasticsearch 是一个开源的搜索引擎,建立在一个全文搜索引擎库 Apache Lucene™ 基础之上. Lucene 可能是目前存在的,不论开源还是私有的,拥有最先进,高性能和全功能搜索 ...
随机推荐
- Spark无法读取hive 3.x的表数据
通过Ambari2.7.3安装HDP3.1.0成功之后,通过spark sql去查询hive表的数据发现竟然无法查询 HDP3.0 集成了hive 3.0和 spark 2.3,然而spark却读取不 ...
- Java读取CSV数据并写入txt文件
读取CSV数据并写入txt文件 package com.vfsd; import java.io.BufferedWriter; import java.io.File; import java.io ...
- 退出Vim编辑器
:q ,退出(:quit的缩写) :q!,退出且不保存(:quit!的缩写) :wq,保存并退出 :wq!,保存并退出即使文件没有写入权限(强制保存退出) :x,保存并退出(类似:wq,但是只有在有更 ...
- EasyDSS高性能RTMP、HLS(m3u8)、HTTP-FLV、RTSP流媒体服务器解决方案之Windows服务安装
背景说明 EasyDSS流媒体解决方案是由安徽旭帆信息科技有限公司自主研发的一套集流媒体点播.转码.管理.直播.录像.检索.时移回看于一体的一套完整的商用流媒体解决方案.EasyDSS软件以压缩包的形 ...
- 【python库模块】Python subprocess模块功能与常见用法实例详解
前言 这篇文章主要介绍了Python subprocess模块功能与常见用法,结合实例形式详细分析了subprocess模块功能.常用函数相关使用技巧. 参考 1. Python subprocess ...
- Java分布式:分布式服务框架——ZooKeeper
Java分布式:ZooKeeper——核心概念 ZooKeeper 统一配置管理 统一命名服务 分布式锁
- spark 开启job history
1.首先需要创建spark.history.fs.logDirectory hadoop fs -mkdir hdfs://ns1:9000/user/hadoop/logs 2.修改hadoop-d ...
- sk-learn 选择正确的估算器
选择正确的估算器 解决机器学习问题最困难的部分通常是为工作找到正确的估算器. 不同的估计器更适合于不同类型的数据和不同的问题. 下面的流程图旨在为用户提供一些关于如何处理有关哪些估算器尝试数据的问题的 ...
- jquery预加载显示百分比
jquery预加载显示百分比 <pre> <img class="bj loadimg" loadimg="/weiqingshu/images/1/b ...
- Delphi RSA签名与验签【支持SHA1WithRSA(RSA1)、SHA256WithRSA(RSA2)和MD5WithRSA签名与验签】
作者QQ:(648437169) 点击下载➨ RSA签名与验签 [delphi RSA签名与验签]支持3种方式签名与验签(SHA1WithRSA(RSA1).SHA256WithRSA(RSA2)和M ...