private void updateAttachmentByGuid(String index, Attachment attachment){
UpdateByQueryRequest request = new UpdateByQueryRequest(index);
request.setQuery(QueryBuilders.matchPhraseQuery("guid", attachment.getGuid()));
request.setScript(new Script(
"ctx._source.acode="+attachment.getAcode()
+";ctx._source.attachmentType="+attachment.getAttachmentType()
+";ctx._source.direction="+attachment.getDirection()
+";ctx._source.distance="+attachment.getDistance()
+";ctx._source.geom="+attachment.getGeom()
+";ctx._source.guid="+attachment.getGuid()
+";ctx._source.name="+attachment.getName()
+";ctx._source.referenceGuid="+attachment.getReferenceGuid()
+";ctx._source.referenceType="+attachment.getReferenceType()
+";ctx._source.tagList="+attachment.getTagList()
+";ctx._source.version="+attachment.getVersion()
));
esUpdateData(index, request);
}
private void esUpdateData(String index, UpdateByQueryRequest request) {
try {
client.updateByQuery(request, RequestOptions.DEFAULT);
}catch (Exception e){
e.printStackTrace();
log.info("更新"+index+"出现异常");
}
}