searchSourceBuilder.query(QueryBuilders.matchQuery(“_id”, “SvjgP24BndtcmnpzbiuL”));
searchSourceBuilder.size(2);
searchRequest.source(searchSourceBuilder);
SearchResponse searchResponse = highLevelClient.search(searchRequest, RequestOptions.DEFAULT);
SearchHit[] searchHits = searchResponse.getHits().getHits();
for(SearchHit s:searchHits){
String docId = s.getId();
UpdateRequest request = new UpdateRequest(“sub_bank1031”,“sub_bank”,docId);
request.doc(“{“aliasName”:“中國農(nóng)業(yè)發(fā)展銀行林州市支行444”,“bankType”:“ADB”,“bankTypeName”:“中國農(nóng)業(yè)發(fā)展銀行”,“cityId”:“410500”,“cityName”:“安陽市”,“createTime”:1515719190000,“createUser”:“system”,“id”:“000238a326b044e9ae10cfe4298f4c44”,“isEnabled”:“1”,“name”:“中國農(nóng)業(yè)發(fā)展銀行林州市支行”,“provinceId”:“410000”,“provinceName”:“河南省”,“unionNumber”:“203496100010”}”, XContentType.JSON);
UpdateResponse resp = highLevelClient.update(request, RequestOptions.DEFAULT);
println(resp.getResult());
}
}
上面操作略顯麻煩,需要多條http請求才能完成,要更新的文檔數(shù)量很多時將大大降低系統(tǒng)響應(yīng)速度,這時候我們可以使用es的UpdateByQueryRequest來實(shí)現(xiàn)該功能。
/**
-
通過腳本更新文檔
-
@throws IOException
*/
@Test
public void updateByQueryRequest() throws IOException {
UpdateByQueryRequest request = new UpdateByQueryRequest(“sub_bank1031”);
request.setDocTypes(“sub_bank”);
request.setQuery(new TermQueryBuilder(“cityId”, “511000”));
request.setSize(2);
request.setScript(
new Script(
ScriptType.INLINE, “painless”,
“if (ctx._source.bankType == ‘BOC’) {ctx._source.aliasName=‘hello’}”,
Collections.emptyMap()));
BulkByScrollResponse resp = highLevelClient.updateByQuery(request, RequestOptions.DEFAULT);
}
PS:
pom文件es相關(guān)依賴如下:
自我介紹一下,小編13年上海交大畢業(yè),曾經(jīng)在小公司待過,也去過華為、OPPO等大廠,18年進(jìn)入阿里一直到現(xiàn)在。
深知大多數(shù)Java工程師,想要提升技能,往往是自己摸索成長或者是報(bào)班學(xué)習(xí),但對于培訓(xùn)機(jī)構(gòu)動則幾千的學(xué)費(fèi),著實(shí)壓力不小。自己不成體系的自學(xué)效果低效又漫長,而且極易碰到天花板技術(shù)停滯不前!
因此收集整理了一份《2024年Java開發(fā)全套學(xué)習(xí)資料》,初衷也很簡單,就是希望能夠幫助到想自學(xué)提升又不知道該從何學(xué)起的朋友,同時減輕大家的負(fù)擔(dān)。
既有適合小白學(xué)習(xí)的零基礎(chǔ)資料,也有適合3年以上經(jīng)驗(yàn)的小伙伴深入學(xué)習(xí)提升的進(jìn)階課程,基本涵蓋了95%以上Java開發(fā)知識點(diǎn),真正體系化!
由于文件比較大,這里只是將部分目錄截圖出來,每個節(jié)點(diǎn)里面都包含大廠面經(jīng)、學(xué)習(xí)筆記、源碼講義、實(shí)戰(zhàn)項(xiàng)目、講解視頻,并且會持續(xù)更新!
如果你覺得這些內(nèi)容對你有幫助,可以掃碼獲取?。。▊渥ava獲?。?/strong>

那么如何才能正確的掌握Redis呢?
為了讓大家能夠在Redis上能夠加深,所以這次給大家準(zhǔn)備了一些Redis的學(xué)習(xí)資料,還有一些大廠的面試題,包括以下這些面試題
-
并發(fā)編程面試題匯總
-
JVM面試題匯總
-
Netty常被問到的那些面試題匯總
-
Tomcat面試題整理匯總
-
Mysql面試題匯總
-
Spring源碼深度解析
-
Mybatis常見面試題匯總
-
Nginx那些面試題匯總
-
Zookeeper面試題匯總
-
RabbitMQ常見面試題匯總
JVM常頻面試:
Mysql面試題匯總(一)
Mysql面試題匯總(二)
Redis常見面試題匯總(300+題)文章來源:http://www.zghlxwxcb.cn/news/detail-858987.html
《一線大廠Java面試題解析+核心總結(jié)學(xué)習(xí)筆記+最新講解視頻+實(shí)戰(zhàn)項(xiàng)目源碼》,點(diǎn)擊傳送門即可獲??!
鏈圖片轉(zhuǎn)存中…(img-7Mgatfxn-1711967485488)]
《一線大廠Java面試題解析+核心總結(jié)學(xué)習(xí)筆記+最新講解視頻+實(shí)戰(zhàn)項(xiàng)目源碼》,點(diǎn)擊傳送門即可獲??!文章來源地址http://www.zghlxwxcb.cn/news/detail-858987.html
到了這里,關(guān)于elasticsearch之UpdateByQueryRequest的文章就介紹完了。如果您還想了解更多內(nèi)容,請?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!