博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
ElasticSearch5.4.3 环境搭建 2017 (5-Java Client Security Api x-pack)
阅读量:2112 次
发布时间:2019-04-29

本文共 3858 字,大约阅读时间需要 12 分钟。

完成基本的配置以后,下面使用java client api进行简单的开发测试。

官方教程:

1. Maven 依赖

4.0.0
com.tom.es
ElasticSearch0100
0.0.1-SNAPSHOT
jar
ElasticSearch0100
http://maven.apache.org
UTF-8
4.1.0.RELEASE
1.5.10
1.6.1
1.8
4.12
1.8.1
junit
junit
${junit.version}
test
org.elasticsearch
elasticsearch
5.4.2
org.elasticsearch.client
transport
5.4.3
org.apache.logging.log4j
log4j-to-slf4j
2.8.2
org.slf4j
slf4j-log4j12
1.7.24
test
org.slf4j
slf4j-api
1.7.24
org.elasticsearch.client
x-pack-transport
5.4.3

官方那个repository好像不能用,所以我只加了依赖,在未启用x-pack的elasticsearch上,使用上面那个transport依赖即可,但是启用x-pack安全认证之后,需要使用x-pack-transport的依赖

注意要添加下面的repository , 不然pom报错,找不到x-pack-transport

elasticsearch-releases
https://artifacts.elastic.co/maven
true
false

2. 示例代码

package com.tom;import java.io.IOException;import java.net.InetSocketAddress;import org.elasticsearch.action.index.IndexResponse;import org.elasticsearch.client.transport.TransportClient;import org.elasticsearch.common.settings.Settings;import org.elasticsearch.common.transport.InetSocketTransportAddress;import org.elasticsearch.common.xcontent.XContentBuilder;import org.elasticsearch.common.xcontent.XContentFactory;import org.elasticsearch.common.xcontent.XContentType;import org.elasticsearch.xpack.client.PreBuiltXPackTransportClient;import org.junit.After;import org.junit.Before;import org.junit.Test;public class TestXPackTransportClient {	TransportClient client = null;		@SuppressWarnings("resource")	@Before	public void before() {		client = new PreBuiltXPackTransportClient(Settings.builder().put("cluster.name", "test_es")//集群名称				.put("node.name", "node-115")//加一个节点				.put("client.transport.sniff", true)//自动探测				.put("xpack.security.user", "elastic:密码")//xpack的用户				.build())				.addTransportAddress(new InetSocketTransportAddress(new InetSocketAddress("ip或者域名", 9300)));//地址1,可以加多个	}		@After	public void after() {		if (client != null) {			client.close();		}	}	@Test	public void testIndex() throws IOException {		XContentBuilder contentBuilder = XContentFactory.jsonBuilder().startObject();		contentBuilder.field("id", "2017_06_01");		contentBuilder.field("name", "KingKong");		contentBuilder.field("director", "tom");		contentBuilder.field("year",   "2017");		String json = contentBuilder.endObject().string();		IndexResponse resp = client.prepareIndex("movies", "film").setSource(json, XContentType.JSON).get();		System.out.println(resp.toString());	}}
执行输入如下:

命令行查一下:OK的

你可能感兴趣的文章
使用wagon-maven-plugin插件自动部署项目
查看>>
Maven 打包的三种方式 和 Springboot 分离jar包
查看>>
ActiveMQ中Session设置的相关理解
查看>>
Linux Python 2.7.15
查看>>
Nexus配置Linux Yum Repository
查看>>
Nexus Python pip Repository
查看>>
Linux Mysql 8.0.1
查看>>
Python pymqi 连接 IBM MQ
查看>>
JVM性能调优监控工具jps、jstack、jmap、jhat、jstat、hprof 详解
查看>>
Java - JVM TLAB、对象在内存中安置顺序、垃圾收集、回收算法
查看>>
转: 关于Linux与JVM的内存关系分析
查看>>
(转)Java 程序员必备的高效 Intellij IDEA 插件
查看>>
局域网(内网)docker安装及代理访问
查看>>
软考 英语学习
查看>>
maven 文件上传到远程服务器目录
查看>>
shell 脚本免密远程访问
查看>>
Linux平台Oracle多个实例启动说明
查看>>
在LINUX平台上手动创建数据库(oracle 10g)(在一个oracle服务器上启动两个实例)
查看>>
Oracle 10g 下载地址
查看>>
Linux 下 新增Oracle10g 实例
查看>>