RestHighLevelClient使用updateByQuery批量更新操作
项目中有个需求是通过条件去批量修改某个或多个字段,在网上找了半天找到批量修改方法api但是有个问题就是这个使用的ElasticsearchClient连接,然而我用的是RestHighLevelClient不好使。
经过一番摸索搜索后发现RestHighLevelClient也提供了updateByQuery,废话不多说下面是具体用法。
public Boolean updateByQuery(RestHightLevelClient client){UpdateByQueryRequest updateByQuery = new UpdateByQueryRequest("索引名");//设置分片并行updateByQuery.setSlices(2);//设置版本冲突时继续执行updateByQuery.setConflicts("proceed");//设置更新完成后刷新索引 ps很重要如果不加可能数据不会实时刷新updateByQuery.setRefresh(true);//查询条件如果是and关系使用must 如何是or关系使用shouldBoolQueryBuilder boolQueryBuilder = QueryBuilders.boolQuery().must(QueryBuilders.termQuery("age","24")).should(QueryBuilders.termQuery("name","张三"))updateByQuery.setQuery(boolQueryBuilder);//设置要修改的内容可以多个值多个用;隔开updateByQuery.setScript(new Script("ctx._source['addr']='北京'"));try {BulkByScrollResponse response = client.updateByQuery(updateByQuery,RequestOptions.DEFAULT)return response.getStatus().getUpdated() > 0?true:false;} catch (IOException e) {e.printStackTrace();}}
RestHighLevelClient使用updateByQuery批量更新操作相关推荐
- Mybatis之批量更新操作
2019独角兽企业重金招聘Python工程师标准>>> Mybatis之批量更新操作 更新单条记录 1 UPDATE course SET name = 'course1' WHER ...
- mybatis mysql 批量更新_mysql批量update更新,mybatis中批量更新操作
在日常开发中,有时候会遇到批量更新操作,这时候最普通的写法就是循环遍历,然后一条一条地进行update操作.但是不管是在服务端进行遍历,还是在sql代码中进行遍历,都很耗费资源,而且性能比较差,容易造 ...
- JAVA怎么批量更新mysql_java 关于批量更新操作的实现
批量更新操作 批量更新逻辑: 底层真正的批量更新(一次请求发送批量更新语句) 底层循环发送语句(假批量更新)-本质上就是一条一条更新 批量更新逻辑判断 JdbcTemplate JdbcUtils.s ...
- JAVA怎么批量更新mysql_java 批量添加、批量更新 操作数据库
(1)三种插入操作的方法 1.1 利用for循环的批量插入 示例xml insert into test_user (u_name,create_date) value (#{userName},SY ...
- Dynamics 365 CRM (online) 使用WebApi调用全局action(Plugin)执行批量更新操作, 前端JS批量上传记录到CRM中
创建一个action process,如下图,分别有两个inputparameter 和一个outputparameter 2.使用visual studio 2019编写一个plugin dll, ...
- Mysql批量更新的三种方式
前言 批量插入由于mysql的VALUES原生支持,使用较为便利. 批量更新的写法一般有三种,在更新数量较少的情况下,前两种性能不相上下.但是在更新字段增加,更新条数较多(500以上)建议使用第三种写 ...
- mybatis批量更新 mysql 报错,Mybatis批量更新报错问题
下面给大家介绍mybatis批量更新报错问题, allowMultiQueries=true 后来发现是jdbc链接没有加允许批量更新操作的参数引起的,不加会报badsql,mysql版的mybati ...
- mysql批量更新报错_Mysql批量更新的三种方式
前言 批量插入由于mysql的VALUES原生支持,使用较为便利. 批量更新的写法一般有三种,在更新数量较少的情况下,前两种性能不相上下.但是在更新字段增加,更新条数较多(500以上)建议使用第三种写 ...
- mysql语句批量更新数据库_sql 更新批量数据库语句
JDBC(六)批量处理sql 批量更新是分组在一起的一批更新,并以"批量"方式发送到数据库,而不是逐个发送更新. 一次发送一批更新到数据库,比一个一个发送更快,等待每个更新完成. ...
最新文章
- 2022-2028年中国演出市场深度调研与投资可行性报告
- 【转】Yii在表单中建立关联下拉列表dropdown
- 玫瑰花函数matlab,网上收到的用matlab画玫瑰花的代码怎么不行啊,报告错误,求大神...
- 如何使用python装饰器_Python学习之如何使用装饰器 @decorator
- ubuntu 安装 sublime
- 网络人“时间都去哪儿了”
- python简单代码恶搞-一个可以套路别人的python小程序实例代码
- 计算机网络:从浅尝辄止到融汇贯通(近两万字长文)
- 今日起禁止个人注册CN域名(每日关注2009.12.14)
- STM32F4—Flash读写
- 栈的输出_程序设计做题笔记:计算表达式(一):栈
- ORA-39405: Oracle Data Pump does not support importing from a source database with TSTZ version 36
- 和传统服务器对比,云计算主要有哪些优势?
- alias template,升级的typedef
- Qt实用技巧:仅去掉标题栏,保持对话框边框
- Tableau 表计算函数
- Plist文件是什么?
- 衡水一中2021高考成绩查询,2021清北保送名单出炉,这些学校表现很亮眼,衡水中学未上榜?...
- java栈溢出漏洞cve,TP-Link WR841N 栈溢出漏洞(CVE-2020-8423)分析
- 邮件乱码产生的原因及其分析