java for es新手之路
来源:互联网 发布:剑三成女脸型数据 编辑:程序博客网 时间:2024/06/03 19:29
目前用es5.3,较es2.0有很大差别,对用法记录一下。
Spingboot 只集成了es2.0的版本,没有集成5.0以上的,所以只能自己设置esClient,esClient设置有两种方式,用常用的
@Configurationpublic class EsClientConfig {@Value("${esclient.host}")private String host;@Value("${esclient.clusterName}")private String clusterName;@Value("${esclient.port}")private int port;@Bean(name = "esClient")public TransportClient esClient() {Settings settings = Settings.builder().put("cluster.name", clusterName).put("client.transport.sniff", true).build();//5.x 添加了自动嗅探功能,添加一个ip就行。TransportClient client = new PreBuiltTransportClient(settings);try {client.addTransportAddress(new InetSocketTransportAddress(InetAddress.getByName(host), port));} catch (UnknownHostException e) {e.printStackTrace();}return client;}}
1、es查询demo
根据es查询,es2.0版本用在setType后面有setFields 设置返回字段,此处修改为setFetchSource()
@Servicepublic class EsService { @Autowired private TransportClient esClient; public List<Map<String, Object>> getEsResultByFields(String index, String type, int size, String fields){ // IdsQueryBuilder qb = QueryBuilders.idsQuery(); // 设置id qb.addIds(id);// MultiMatchQueryBuilder multiMatchQueryBuilder = QueryBuilders.multiMatchQuery("",fields);// SearchResponse resp = esClient.prepareSearch("ent_index").setTypes("ENT_INDEX").setSize(size).execute().actionGet();// List<Map<String, Object>> data = new ArrayList<>();// for (SearchHit hit : resp.getHits()) {// Map<String, Object> map = hit.getSource();// data.add(map);// } SearchResponse resp = esClient.prepareSearch(index).setTypes(type).setFetchSource(fields.split(","), null).setSize(size).execute().actionGet(); List<Map<String, Object>> data = new ArrayList<>(); for (SearchHit hit : resp.getHits()) { data.add(hit.getSource()); } return data; }}
2、es聚合demo
http://blog.csdn.net/napoay/article/details/53484730
阅读全文
0 0
- java for es新手之路
- 新手学习Java之路
- 新手开始java web之路
- 新手小白的Java之路
- JAVA新手之路(持续更新)
- Java新手之SqlLite连接
- ACM之Java新手速成
- Elasticsearch笔记五之java操作es
- Elasticsearch笔记五之java操作es
- OPENGL-ES之地球与月球For IOS
- OpenGL ES Programming Guide for iOS 之 iOS 中的OpenGL ES
- 新手之路
- 新手之路
- 吉他新手之路
- 新手之路--spark
- Java自学之路(新手一定要看)
- 黑马程序员-(1)Java新手之路
- Java自学之路(新手一定要看)
- 402. Remove K Digits(贪心)
- 复习建库建表分组分页查询,索引的建立和删除
- Mybatis 映射器
- 20170922在arduino IDE添加mega16\32\64\128 mcu支持
- 获取手机设备的相关信息
- java for es新手之路
- 物联网中的 ARM 漏洞利用
- maven 本地仓库的配置
- 设计模式
- 第三周项目二C/C++建设“顺序表”算法库
- EXCEL中TEXT函数与EXACT函数的使用
- JVM调优总结(五)-分代垃圾回收详述1
- Gson 解析泛型出现ClassCastException
- mtk的camera调试问题