The number of object passed must be even but was [1]
1.失败,使用TransportClient
public static void bulkInsert(TransportClient client) throws IOException {List<Person> ps=new ArrayList<Person>();Person one=new Person();one.setId("1");one.setAddress("add");one.setMobile("1111");one.setSex("f");one.setUsername("www");ps.add(one);Person two=new Person();two.setId("2");two.setAddress("add");two.setMobile("2222");two.setSex("f");two.setUsername("www");ps.add(two);Persons pss=new Persons();pss.setPersons(ps);pss.setUuid("uiid");String jsonStr=JSON.toJSONString(pss);System.out.println(jsonStr);IndexResponse response = client.prepareIndex("www", "www").setSource(jsonStr).get();System.out.println("创建成功!");}
原因是:setSource方法不支持json,源码如下:
/*** Constructs a simple document with a field name and value pairs.* <p>* <b>Note: the number of objects passed to this method must be an even* number. Also the first argument in each pair (the field name) must have a* valid String representation.</b>* </p>*/public IndexRequestBuilder setSource(Object... source) {request.source(source);return this;}
2.成功,使用RestHighLevelClient 可以直接使用json
public static void InsertByJson(RestHighLevelClient client) throws IOException {List<Person> ps=new ArrayList<Person>();Person one=new Person();one.setId("1");one.setAddress("add");one.setMobile("1111");one.setSex("f");one.setUsername("www");ps.add(one);Person two=new Person();two.setId("2");two.setAddress("add");two.setMobile("2222");two.setSex("f");two.setUsername("www");ps.add(two);Persons pss=new Persons();pss.setPersons(ps);pss.setUuid("uiid");String jsonStr=JSON.toJSONString(pss);System.out.println(jsonStr);IndexRequest req = new IndexRequest("www", "www"); req.source(jsonStr, XContentType.JSON);IndexResponse response = client.index(req);System.out.println("创建成功!");}
转载于:https://www.cnblogs.com/davidwang456/p/9984516.html
The number of object passed must be even but was [1]相关推荐
- 解决:elasticsearch 更新报错:The number of object passed must be even but was [1]
前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家.点击跳转到教程. 1. 错误的代码写法: @Autowiredprivate ElasticsearchOperati ...
- 【elasticsearch】The number of object passed must be even but was [1]
1.概述 The number of object passed must be even but was [1] ES 在调用 setSource 的时候传入 Json 对象后会报错:The num ...
- 2021年大数据ELK(十三):Elasticsearch编程(添加职位数据)
全网最详细的大数据ELK文章系列,强烈建议收藏加关注! 新文章都已经列出历史文章目录,帮助大家回顾前面的知识重点. 目录 Elasticsearch编程 一.添加职位数据 1.初始化客户端连接 2.实 ...
- Elasticsearch+Spring Boot集成实践
ELK-技术栈 Elasticsearch 简介 Elasticsearch 是一个分布式.RESTful 风格的搜索和数据分析引擎,能够解决不断涌现出的各种用例. 作为 Elastic Stac ...
- JavaScript内置对象→对象、系统函数、Date日期对象、String字符串对象、Math对象、Number数字对象、Object对象、Boolean对象、Error对象
对象 系统函数 Date日期对象 String字符串对象 Math对象 Number数字对象 Object对象 Boolean对象 Error对象
- JavaScript 复制对象与Object.assign方法无法实现深复制
在JavaScript这门语言中,数据类型分为两大类:基本数据类型和复杂数据类型.基本数据类型包括Number.Boolean.String.Null.String.Symbol(ES6 新增),而复 ...
- 通过 Object.prototype.toString.call() 进行类型判断
为什么80%的码农都做不了架构师?>>> 首先看一段ECMA中对Object.prototype.toString的解释: Object.prototype.toString( ...
- Java泛型中? 和 ? extends Object的异同分析
点击上方蓝色"程序猿DD",选择"设为星标" 回复"资源"获取独家整理的学习资料! 作者 | 刘一手 来源 | 公众号「锅外的大佬」 Jav ...
- ECMA262 Edition5 Object,Object的属性和方法,Object.prototype的方法.
ES5,为Object添加了一批方法.了解这些方法,可以更好的理解属性描述符的应用. 所以还是很有必要读一读的.另外,这些方法用起来还是蛮给力的. 暂时对于ES5,就只放出这些吧,希望对大家有所帮助. ...
最新文章
- java学习笔记—校验码的实现(15)
- 2018.09.24-2018.09.30
- linux怎么创建扩展分区,Linux磁盘创建扩展分区
- QT事件的接受与忽略
- mysql 求两列数据组合_mysql – 将两个具有不同列数的查询组合在一起
- 案例篇-HBase 实战之 MOB 使用指南
- 【车间调度】基于matlab粒子群算法求解6X6车间调度问题【含Matlab源码 411期】
- 七年之后的《深入理解计算机系统》
- Ubuntu18.04安装中文字体SimHei
- 计算机的管理选项文件错误,如何修复Microsoft Teams错误文件在Windows PC中被锁定...
- 自考计算机离散数学,计算机及应用自考资料2014 10 离散数学02324.doc
- 【周五松土】私家萝卜与坑
- NoSQL数据库介绍(7)
- 阿里数据仓库-数据模型建设方法总结(全)
- Linux性能优化实战学习笔记:第四十六讲=====实战分析
- 使用手机软件Bluino Loader通过蓝牙编程、烧录Arduino
- 重装系统:cdboot:couldn't find ntldr
- 2021年河南省高考数据统计:河南省参加考试人数占报名人数的83.7%,本土156所高校(1所211大学)
- ui配色方案_开放色彩–针对设计师的UI优化配色方案
- 使用NetBox实现ASP网页封装为EXE教程
热门文章
- Android实训日志:基于外部存储的音乐播放器V05
- 前端命名规范_前端开发工程师如何突破年薪50万?这里有4点建议
- 英语口语智能测试软件,口语易英语口语智能评测训系统 官方版v7.9
- 计算机应用基础2004年,计算机应用基础2004年下半年全国试题参考答案2
- cpu序列号能告诉别人嘛_微信这个开关不删除,别人手机能随意登录你的微信,学会告诉家人...
- linux 踢出其他用户,Linux查看当前登录用户并踢出用户
- java 创建string_Java 如何创建一个String
- word回车后间距太大_Word这些神奇的功能,你知道多少?学会这4招,工作不再发愁...
- 安卓禁止ScrollView内的控件改变之后自动滚动
- linux自动对齐命令,linux查看硬盘4K对齐方法