一、索引操作
//创建索引
public static void main(String[] args) throws IOException {
// 1. 创建 ES 连接池
JestClientFactory jestClientFactory = new JestClientFactory();
// 2. 配置 ES 信息
HttpClientConfig config = new HttpClientConfig.Builder("http://127.0.0.1:9200").build();
jestClientFactory.setHttpClientConfig(config);
// 3. 获取 ES 连接
JestClient jestClient = jestClientFactory.getObject();
// 4. 创建索引
CreateIndex createIndex = new CreateIndex.Builder("my_index").build();
JestResult result = jestClient.execute(createIndex);
// 5. 输出创建结果
System.out.println(result.getJsonString());
}
//删除索引
public static void main(String[] args) throws IOException {
// 1. 创建 ES 连接池
JestClientFactory jestClientFactory = new JestClientFactory();
// 2. 配置 ES 信息
HttpClientConfig config = new HttpClientConfig.Builder("http://127.0.0.1:9200").build();
jestClientFactory.setHttpClientConfig(config);
// 3. 获取 ES 连接
JestClient jestClient = jestClientFactory.getObject();
// 4. 删除索引
DeleteIndex deleteIndex = new DeleteIndex.Builder("my_index").build();
JestResult result = jestClient.execute(deleteIndex);
// 5. 输出创建结果
System.out.println(result.getJsonString());
}
//设置Mapping
public static void main(String[] args) throws IOException {
// 1. 创建 ES 连接池
JestClientFactory jestClientFactory = new JestClientFactory();
// 2. 配置 ES 信息
HttpClientConfig config = new HttpClientConfig.Builder("http://127.0.0.1:9200").build();
jestClientFactory.setHttpClientConfig(config);
// 3. 获取 ES 连接
JestClient jestClient = jestClientFactory.getObject();
// 4. 创建 json 格式的 mapping
/**
* {
* "mappings":{
* "properties":{
* "field1":{
* "type":"keyword"
* },
* "field2":{
* "type":"byte"
* }
* }
* }
* }
*/
Map<String, Object> map = new HashMap<String, Object>() {
{
this.put("mappings", new HashMap<String, Object>() {
{
this.put("properties", new HashMap<String, Object>() {
{
this.put("name", new HashMap<String, String>() {
{
//this.put("type", "keyword");
}});
this.put("age", new HashMap<String, String>() {
{
//this.put("type", "integer");
}});
}});