首先本文代码参考和引用了本博客的代码:

http://www.cnblogs.com/coderdxj/p/6856145.html

package com.test.entity;
public class Blog {private Integer id;private String title;private String posttime;private String content;public Blog() {}public Blog(Integer id, String title, String posttime, String content) {this.id = id;this.title = title;this.posttime = posttime;this.content = content;}//setter and getterpublic Integer getId() {return id;}public void setId(Integer id) {this.id = id;}public String getTitle() {return title;}public void setTitle(String title) {this.title = title;}public String getPosttime() {return posttime;}public void setPosttime(String posttime) {this.posttime = posttime;}public String getContent() {return content;}public void setContent(String content) {this.content = content;}
}
package com.test.entity;import org.elasticsearch.common.xcontent.XContentBuilder;
import org.elasticsearch.common.xcontent.XContentFactory;import java.io.IOException;public class JsonUtil {public static String model2Json(Blog blog) {String jsonData = null;try {XContentBuilder jsonBuild = XContentFactory.jsonBuilder();jsonBuild.startObject().field("id", blog.getId()).field("title", blog.getTitle()).field("posttime", blog.getPosttime()).field("content",blog.getContent()).endObject();jsonData = jsonBuild.string();//System.out.println(jsonData);} catch (IOException e) {e.printStackTrace();}return jsonData;}}
package com.test.entity;import java.util.ArrayList;
import java.util.List;public class DataFactory {public static DataFactory dataFactory = new DataFactory();private DataFactory() {}public DataFactory getInstance() {return dataFactory;}public static List<String> getInitJsonData() {List<String> list = new ArrayList<String>();String data1 = JsonUtil.model2Json(new Blog(1, "git简介", "2016-06-19", "SVN与Git最主要的区别..."));String data2 = JsonUtil.model2Json(new Blog(2, "Java中泛型的介绍与简单使用", "2016-06-19", "学习目标 掌握泛型的产生意义..."));String data3 = JsonUtil.model2Json(new Blog(3, "SQL基本操作", "2016-06-19", "基本操作:CRUD ..."));String data4 = JsonUtil.model2Json(new Blog(4, "Hibernate框架基础", "2016-06-19", "Hibernate框架基础..."));String data5 = JsonUtil.model2Json(new Blog(5, "Shell基本知识", "2016-06-19", "Shell是什么..."));list.add(data1);list.add(data2);list.add(data3);list.add(data4);list.add(data5);return list;}}
package com.test.entity;import org.elasticsearch.action.index.IndexResponse;
import org.elasticsearch.client.Client;
import org.elasticsearch.client.transport.TransportClient;
import org.elasticsearch.common.settings.Settings;
import org.elasticsearch.common.transport.InetSocketTransportAddress;import java.io.IOException;
import java.net.InetAddress;
import java.net.UnknownHostException;
import java.util.HashMap;
import java.util.List;
import java.util.Map;public class ElasticSearchHandler {public static void main(String[] args) {try {/* 创建客户端 */// client startupMap<String, String> map = new HashMap();map.put("cluster.name", "application");Settings.Builder settings = Settings.builder().put(map);Client client = TransportClient.builder().settings(settings).build().addTransportAddress(new InetSocketTransportAddress(InetAddress.getByName("localhost"),9300));List<String> jsonData = DataFactory.getInitJsonData();for (int i = 0; i < jsonData.size(); i++) {IndexResponse response = client.prepareIndex("blog", "article").setSource(jsonData.get(i)).get();if (response.isCreated()) {System.out.println("创建成功!");}}client.close();} catch (UnknownHostException e) {e.printStackTrace();} catch (IOException e) {e.printStackTrace();}}}

在实际运行过程中,出现如下错误:

Exception in thread "main" NoNodeAvailableException[None of the configured nodes are available: [{#transport#-1}{127.0.0.1}{127.0.0.1:9300}]]

解决:如果你配置了es集群的cluster.name,则需要在settings中添加cluster.name的名字,如果没有修改端口号,则客户端的端口号为9300。

再次运行问题解决。

    Map<String, String> map = new HashMap();  map.put("cluster.name", "es_test");  Settings.Builder settings = Settings.builder().put(map);  Client client = TransportClient.builder().settings(settings).build()  .addTransportAddress(new InetSocketTransportAddress(  InetAddress.getByName("localhost"), Integer.parseInt("9300")));  

参考:http://stackoverflow.com/questions/25912572/java-elasticsearch-none-of-the-configured-nodes-are-available

Elasticsearch2.3.2创建索引java代码及异常处理相关推荐

  1. 混合索引java代码,Elasticsearch 实现拼音,中文,首字母混合搜索

    在实际搜索需求中,常常需要对中文做拼音搜索,首字母搜索或者中文拼音首字母混合搜索. 比如要对 "广发聚财信用" 这几个中文进行拼音搜索,我们可能的搜索关键字是:"广发&q ...

  2. java在指定项目下创建目录_在指定目录创建文件 Java代码

    linux 下 以哪个用户启动weblogic  那么 它就会哪个用户的权限, 如用weblogic用户启那么他就只能操作weblogic用户权限内的可用文件及文件夹,用root启动,则可以可用操作所 ...

  3. 自定义异常 java代码_Java异常处理与自定义异常

    一.何为异常 异常:在Java语言中,将程序执行中发生的不正常情况称为"异常".(开发过程中的语法错误和逻辑错误不是异常) Java程序在执行过程中所发生的异常事件可分为两类: E ...

  4. java代码怎样连接es,Elasticsearch 连接ES的两种方式

    1.创建客户端节点来连接: 其中client(true)将node指定为客户端节点,所以这个不能写漏掉,客户端节点是不持有数据的, Java代码   Node node = NodeBuilder.n ...

  5. 索引的概念和创建索引例子

    1 索引的概念 索引是一个单独的.物理的数据库结构,它是某个表中一列或若干列值的集合和相应的指向表中物理标识这些值的数据页的逻辑指针清单.表的存储由两部分组成,一部分用来存放数据页面,另一部分存放索引 ...

  6. MySQL数据库索引:删除、查看、创建索引

    索引(index)是对数据库表中一列或多列的值进行排序的一种结构,使用索引可快速访问数据库表中的特定信息.--百度百科 正常的一张表,是无序,如果要进行查询(select)操作,理论上会将表中所有记录 ...

  7. java代码内创建mysql索引_点评阿里JAVA手册之MySQL数据库 (建表规约、索引规约、SQL语句、ORM映射)...

    下载原版阿里JAVA开发手册  [阿里巴巴Java开发手册v1.2.0] 本文主要是对照阿里开发手册,注释自己在工作中运用情况. 本文内容:MySQL数据库 (建表规约.索引规约.SQL语句.ORM映 ...

  8. HIVE的安装配置、mysql的安装、hive创建表、创建分区、修改表等内容、hive beeline使用、HIVE的四种数据导入方式、使用Java代码执行hive的sql命令

    1.上传tar包 这里我上传的是apache-hive-1.2.1-bin.tar.gz 2.解压 mkdir -p /home/tuzq/software/hive/ tar -zxvf apach ...

  9. ElasticSearch Java Api(一) -创建索引

    ElasticSearch Java API官网文档:https://www.elastic.co/guide/en/elasticsearch/client/java-api/current/jav ...

最新文章

  1. 评测指标(metrics)
  2. Android入门(十二)SQLite事务、升级数据库
  3. AI理论知识基础(24)-凸函数
  4. 0x84bb0001 sqlserver_sqlserver 2000 远程连接 服务器的解决方案
  5. HTML5 - Canvas动画样例(谷歌弹跳球)
  6. 腾讯牌番茄,新鲜上市!
  7. 虚拟专题:联邦学习 | 联邦学习算法综述
  8. 一个页面,WEB全功能
  9. gRPC入门教程汇总
  10. Srs之HttpApi内部调用流程
  11. Douglas Peucker算法的C#实现
  12. Android GifImageView加载Gif图片及原理
  13. 第三方平台可以通过微信公众平台素材管理接口实现同步了
  14. Vo Mic|旧手机不要扔,一招秒变无线麦克风
  15. java面试170道精讲:留着慢慢看
  16. The OCD Brain: how animal research helps us understand a devastating condition
  17. 人工智能基础——知识的概念
  18. 如何用项目甘特图,做好项目汇报
  19. python signal模块作用_Python中的signal模块和Ctrl+C操作
  20. 如何发布一个本地网站

热门文章

  1. 【floyd模板】哈利·波特的考试 (25 分)
  2. 【可运行,刘汝佳代码】Trees on the level UVA - 122
  3. 43行代码AC——例题6-8 树(Tree,UVa 548)——解题报告
  4. InnoDB 的索引模型
  5. java面试题(转载其他人,方便日常看)
  6. (*长期更新)软考网络工程师学习笔记——Section 3 宽带接入技术和导引型传输媒体
  7. 用计算机完成下表的视距测量计算公式,测量学计算题.doc
  8. python3贴吧_python3模拟百度登录并实现贴吧自动签到
  9. 把一个人的特点写具体作文_部编版五年级下册语文 第五单元:习作 | 把一个人的特点写具体 电子课本+教案课件...
  10. w7计算机不显示cdf盘,微软确认Win7SP1再现黑屏错误