我尝试使用以下方式突出显示文本:
@Highlight(prefix="<strong>",postfix="</strong>")
像这样:
@Query("articletype:?0")
@Highlight(prefix="<strong>",postfix="</strong>")
ON SOME METHOD
但这是行不通的。
我什至尝试通过在
@Highlight
中将查询作为attr传递来突出显示。但这没有用。请建议如何将
@Highlight
与@Query
一起使用以突出显示内容。 最佳答案
1。
@Query("field_name:?0")
@Highlight(prefix="<strong>",postfix="</strong>")
public HighlightPage<YOUR_ENTITY_CLASS> yourSomeMethod(String textToBeSearched);
2。
HighlightPage listSolrPage = solrRepository.yourSomeMethod(textToBeSearched);
3。
for (HighlightEntry<YOUR_ENTITY_CLASS> he : listSolrPage.getHighlighted()) {
for (Highlight highlight : he.getHighlights()) {
// Each highlight might have multiple occurrences within the description
StringBuilder sb = new StringBuilder();
for (String snipplet : highlight.getSnipplets()) {
// snipplet contains the highlighted text
slf4jLogger.debug(snipplet);
sb.append(snipplet + "");
}
}
}
关于java - 如何在存储库中使用@Highlight注释突出显示Solr Search中的文本,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/39788274/