您的位置:首页 > 其它

Solr4:创建索引时的一些建议

2013-02-20 16:24 288 查看
使用SolrJ组件创建索引时,以下问题记录一下,涉及文档打分、日期字段处理、多值字段处理等:

1. 需要对文档进行打分

// 对title/content字段进行处理
float boost = IndexTool.getBoost(info.getWebTitle());
doc.addField("webTitle", info.getWebTitle(), boost);
boost = IndexTool.getBoost(info.getWebContent());
doc.addField("webContent", info.getWebContent(), boost);


上述代码引用的IndexTool代码可以参考:Lucene4.1:获取中文分词结果,根据文本计算boost,可以自定义规则对文档进行打分。

2. 日期字段的处理

java.text.SimpleDateFormat sdf = new java.text.SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
try {
doc.addField("webTime", new Date(sdf.parse(info.getWebTime()).getTime()));
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}


3. 多值字段的处理

// 不支持List提交,只能数组提交,需要作一转换
String[] images = info.getWebImage().toArray(new String[info.getWebImage().size()]);
doc.addField("webImage", images);


以后碰到的接着补充。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: