LUCENE4.0搜索结果的问题
喝茶的小鹿 2013-04-03 01:22:34
用的是 红薯的在git的代码
数据库的数据有
from t_book_list where title like '%裤%'; +----------------------------------------------------------+ | title | +----------------------------------------------------------+ | 韩版新秋装 男童装 热卖 牛仔裤 | | 正品私宠时装裤 | | 2010秋冬装新款 韩版中腰铅笔修身牛仔裤 女靴裤 小脚裤 | | 童装秋装女童运动休闲套装长袖+长裤时尚连帽米奇图案蝴蝶结 | | 歌瑞尔品牌女士内裤新品 永恒之塔 时尚个性内裤 | | 紧身提臀女牛仔小脚裤 显瘦女小腿裤铅笔裤 蓝色黑色女牛仔裤 | | 巴黎街头 秋装新款 超赞细节 极具质感 厚质型格时装裤 | | 2010秋装款play川久保玲潮牌直筒 时尚休闲牛仔裤 | | 新款 韩版西裤 休闲西裤 修身西裤 男装西裤 | | 竹纤维男式内裤 平角内裤 透气抗菌 | | 保暖内拉绒 男士家居服套装 长袖长裤 睡衣套装 晨练装 | +----------------------------------------------------------+
然后我的代码是:
String[] fileds={"title","context"}; MultiFieldQueryParser mp=new MultiFieldQueryParser(Version.LUCENE_40,fileds,new IKAnalyzer()); Query query=mp.parse("裤"); TopDocs topdocs=searcher.search(query, 15); ScoreDoc[] scoreDocs=topdocs.scoreDocs; System.out.println("查询结果总数---" + topdocs.totalHits+"最大的评分--"+topdocs.getMaxScore()); for(int i=0; i < scoreDocs.length; i++) { int doc = scoreDocs[i].doc; Document document = searcher.doc(doc); System.out.println(SearchHelper.highlight(document.get("content"),"连衣裙")); }
查询结果总数---6最大的评分--16.55302 紧身提臀女牛仔小脚裤 显瘦女小腿裤铅笔裤 蓝色黑色女牛仔裤 巴黎街头 秋装新款 超赞细节 极具质感 厚质型格时装裤 2010秋装款play川久保玲潮牌直筒 时尚休闲牛仔裤 2010秋冬装新款 韩版中腰铅笔修身牛仔裤 女靴裤 小脚裤 正品私宠时装裤 韩版新秋装 男童装 热卖 牛仔裤
部分数据好像没有搜索出来, @红薯