关于lucene高亮显示

waitingmyself 2008-02-29
是从多在field中通过一个关键词查询出来的,在高亮显示的时候对所有的document中的所有field都调用高亮显示的方法,结果一些不包含关键词的field内容被替换为空。
不知道有没有有说清楚,以下是主要代码:

高亮主要代码:
TokenStream tokenStream = new StandardAnalyzer().tokenStream(
    field, new StringReader(fieldContent));
String result11 = highlighter.getBestFragments(
    tokenStream, fieldContent, 5, "...");


查询结果代码:
		for (int i = start; i < end; i++) {
			Document doc = hits.doc(i);
			P2pJourArticle model = new P2pJourArticle();
			model.setTitleCn(setHighlighter("titleCn", doc.get("titleCn"), query));
			model.setTitleEn(setHighlighter("titleEn", doc.get("titleEn"), query));
		}




例如查询“技术”,所有结果中的英文标题都为空了。
查询“java”的时候,所有结果中的中文标题为空了。
不调用setHighlighter方法时一切正常。
waitingmyself 2008-03-03
问题解决
		if(resultll == null || resultll.equals("")){
			resultll = fieldContent;
		}
Global site tag (gtag.js) - Google Analytics