51,411
社区成员
发帖
与我相关
我的任务
分享 //高亮显示
//开启高亮
solrQuery.setHighlight(true);
//设置高亮字段
solrQuery.addHighlightField("document_TITLEPROPER");
solrQuery.addHighlightField("document_ABSTRACT");
solrQuery.addHighlightField("document_DESCRIPTOR");
solrQuery.addHighlightField("document_RECORDNO");
//启用多字段高亮
solrQuery.set("hl.highlightMultiTerm","true");
//设置高亮前缀
solrQuery.setHighlightSimplePre("<font color='red'>");
//设置高亮后缀
solrQuery.setHighlightSimplePost("</font>");
//设置默认查询
solrQuery.set("df", "document_keywords");
//调用dao方法,执行搜索查询
SearchPageBean pageBean = DocumentsDao.queryIndexWithSolr(solrQuery); //获取高亮显示
Map<String, Map<String, List<String>>> highlighting = response.getHighlighting();
if(highlighting != null){
//标题
List<String> list = highlighting.get(sdoc.get("id")).get("document_TITLEPROPER");
//摘要
List<String> list2 = highlighting.get(sdoc.get("id")).get("document_ABSTRACT");
//关键字
List<String> list3 = highlighting.get(sdoc.get("id")).get("document_DESCRIPTOR");
// 文本
List<String> list4 = highlighting.get(sdoc.get("id")).get("document_RECORDNO");
if(list != null && list.size() > 0){
d.setTITLEPROPER(list.get(0));
} else {
d.setTITLEPROPER(String.valueOf(sdoc.get("document_TITLEPROPER")));
}
if(list2 != null && list2.size() > 0){
d.setABSTRACT(list2.get(0));
} else {
d.setABSTRACT(String.valueOf(sdoc.get("document_ABSTRACT")));
}
if(list3 != null && list3.size() > 0){
d.setDESCRIPTOR(list3.get(0));
} else {
d.setDESCRIPTOR(String.valueOf(sdoc.get("document_DESCRIPTOR")));
}
if(list4 != null && list4.size() > 0){
d.setRECORDNO(list4.get(0));
} else {
d.setRECORDNO(String.valueOf(sdoc.get("document_RECORDNO")));
}
} else {
d.setTITLEPROPER(String.valueOf(sdoc.get("document_TITLEPROPER")));
d.setABSTRACT(String.valueOf(sdoc.get("document_ABSTRACT")));
d.setDESCRIPTOR(String.valueOf(sdoc.get("document_DESCRIPTOR")));
d.setRECORDNO(String.valueOf(sdoc.get("document_RECORDNO")));
}