单字查询课程时偶尔返回关键词带高亮前后缀

This commit is contained in:
670788339
2023-07-19 17:40:09 +08:00
parent d149995f37
commit bb015edcbe

View File

@@ -637,10 +637,10 @@ public class CourseElasticsearchImpl implements ICourseFullTextSearch{
HighlightBuilder.Field nameHighlight=new HighlightBuilder.Field("name"); HighlightBuilder.Field nameHighlight=new HighlightBuilder.Field("name");
HighlightBuilder.Field summaryHighlight=new HighlightBuilder.Field("summary"); HighlightBuilder.Field summaryHighlight=new HighlightBuilder.Field("summary");
HighlightBuilder.Field teacherHighlight=new HighlightBuilder.Field("teacher"); HighlightBuilder.Field teacherHighlight=new HighlightBuilder.Field("teacher");
HighlightBuilder.Field keywordsHighlight=new HighlightBuilder.Field("keywords"); // HighlightBuilder.Field keywordsHighlight=new HighlightBuilder.Field("keywords");
highlightBuilder.field(nameHighlight); highlightBuilder.field(nameHighlight);
highlightBuilder.field(teacherHighlight); highlightBuilder.field(teacherHighlight);
highlightBuilder.field(keywordsHighlight); // highlightBuilder.field(keywordsHighlight);
highlightBuilder.field(summaryHighlight); highlightBuilder.field(summaryHighlight);
@@ -663,7 +663,7 @@ public class CourseElasticsearchImpl implements ICourseFullTextSearch{
HighlightField name = highlightFields.get("name"); HighlightField name = highlightFields.get("name");
HighlightField summary = highlightFields.get("summary"); HighlightField summary = highlightFields.get("summary");
HighlightField teacher = highlightFields.get("teacher"); HighlightField teacher = highlightFields.get("teacher");
HighlightField keywords = highlightFields.get("keywords"); // HighlightField keywords = highlightFields.get("keywords");
String sourceAsString = hit.getSourceAsString(); String sourceAsString = hit.getSourceAsString();
try { try {
CourseFullText cft =mapper.readValue(sourceAsString, CourseFullText.class); CourseFullText cft =mapper.readValue(sourceAsString, CourseFullText.class);
@@ -696,14 +696,14 @@ public class CourseElasticsearchImpl implements ICourseFullTextSearch{
cft.setTeacher(fmtStr.toString()); cft.setTeacher(fmtStr.toString());
} }
if(keywords!= null){ /*if(keywords!= null){
Text[] fragments = keywords.fragments(); Text[] fragments = keywords.fragments();
StringBuffer fmtStr = new StringBuffer(""); StringBuffer fmtStr = new StringBuffer("");
for (Text fragment : fragments) { for (Text fragment : fragments) {
fmtStr.append(fragment); fmtStr.append(fragment);
} }
cft.setKeywords(fmtStr.toString()); cft.setKeywords(fmtStr.toString());
} }*/
list.add(cft); list.add(cft);
}catch(Exception ee) { }catch(Exception ee) {
log.error("转化json到对应失败"); log.error("转化json到对应失败");