论坛首页 Java企业应用论坛

lucene中怎么同时搜索两个以上的域?

浏览 4821 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
   发表时间:2007-07-17  
想搜索的时候标题的权重大一点,所以标题和内容是存在两个不同的域中。本来想用MultiFieldQueryParser类来进行查询,看了下API文档,说这不是一个理想的方法,那不用这个,大家有没有什么其他好的方法那? 
   发表时间:2007-07-17  
自己写Query语句
然后用QueryParser解析
0 请登录后投票
   发表时间:2007-07-17  
一个domian里面的两个属性


CompassQueryBuilder queryBuilder = session.queryBuilder();

CompassQueryStringBuilder queryString = queryBuilder.queryString("title:" + getSearchString() + " OR description:" + getSearchString());
CompassQuery query = queryString.toQuery();
query.setAliases(new String[] {"ReaderItem"});
0 请登录后投票
   发表时间:2007-07-18  
自己写query语句,然后用QueryParser解析,这样解析出来以后会不会影响搜索速度那?
0 请登录后投票
   发表时间:2007-07-18  
想搜索的时候标题的权重大一点
用setboost吧
0 请登录后投票
   发表时间:2007-07-19  
组合两个BooleanQuery就可以了啊
0 请登录后投票
   发表时间:2007-08-08  
推荐在建立索引的时候,建立一个把标题和正文合并的字段
0 请登录后投票
   发表时间:2007-08-08  
与查询相比
QueryParser解析的时间基本上是可以省略的
0 请登录后投票
论坛首页 Java企业应用版

跳转论坛:
Global site tag (gtag.js) - Google Analytics