(原)java - 抽取ES数据动态添加到list数组集合中
博客只提供【标题】中关键代码片段,其余为辅助代码,不过多展示,请理解 ~ ~
//自定义 学科名称数组 ArrayList arraySubList = new ArrayList(); ArrayList arraySubIdList = new ArrayList(); if (elasticsearchRestTemplate.indexExists("s*******************b")) { SearchQuery searchQuery = new NativeSearchQueryBuilder() .withIndices("s************b") .withTypes("_***************") .withQuery(boolQuery) .build(); //统计学生的发布课程信息 List s*************Os = elasticsearchRestTemplate.queryForList(searchQuery, S*************O.class); //根据学生发布课程编号获取学段,学科基本信息 for (int i = 0; i < stuIssueD**********s.size(); i++) { String strCourseId = stu************s.get(i).getCourse_base_id(); //课程统计 BoolQueryBuilder queryCourseInfo = QueryBuilders.boolQuery(); queryCourseInfo.must(QueryBuilders.termQuery("co******id", strCourseId)); SearchQuery queryCourse = new NativeSearchQueryBuilder() .withIndices("s****************o") .withTypes("_d************************") .withQuery(queryCourseInfo) .build(); List co*************List = elasticsearchRestTemplate.queryForList(queryCourse, C***********O.class); for (int j = 0; j < co**********ist.size(); j++) { BoolQueryBuilder querySubInfo = QueryBuilders.boolQuery(); //学段信息 if (StringUtils.isNotBlank(subjectId)) { querySubInfo.must(QueryBuilders.termQuery("s******de", subjectId)); } else { querySubInfo.must(QueryBuilders.termQuery("s***********de", courseVOFromESList.get(j).getBusiness_subject_id())); } //学科信息 if (StringUtils.isNotBlank(stageId)) { querySubInfo.must(QueryBuilders.termQuery("s******de", stageId)); } else { querySubInfo.must(QueryBuilders.termQuery("s*******de", courseVOFromESList.get(j).getBu*******_id())); } SearchQuery querySubjectInfo = new NativeSearchQueryBuilder().withIndices("st*********t").withTypes("_***********c").withQuery(querySubInfo).build(); List subList = elasticsearchRestTemplate.queryForList(querySubjectInfo, Su*********O.class); //动态添加 - list数组 //动态添加 - list数组 arraySubList.add(subList.get(0).getSubject_name()); arraySubIdList.add(subList.get(0).getSubject_code()); } } List s**************List = homeworkService.getQuestionAndknowledgeTotal(s****************O); for (int i = 0; i < st************List.size(); i++) { //学生学习的课程数量 st**************List.get(i).setResourceAccount(s************s.size()); stud**************List.get(i).setSubjectId(subjectId); //学科名称 subList.stream().map(S*******::getSubject_name).collect(Collectors.toList());// studentSubResourceVOList.get(i).setSubjectName(subName.toString()); } return studentSubResourceVOs; }
【参考博客】
https://www.cnblogs.com/jokerjason/p/10419129.html
文章中,有问题,可以在评论区评论
转载声明:本文为博主原创文章,未经博主允许不得转载
如果我的文章有帮助到您,欢迎打赏一下鼓励博主