Bean和Lucen Document的转换
/**
* artilce 到文当document之间的转换...
* @author Administrator
*
*/
public class ArticleToDocumentUtils {
/**
* 将artilce 转换成document,无非就是将aticle
* 当中的值取出来放到document当中去,进行一个映射关系
*
* @param article
* @return
*/
public static Document articleToDocument(Article article){
Document document=new Document();
IntField idfield=new IntField("id", article.getId(), Store.YES);
StringField authorfield=new StringField("author", article.getAuthor(), Store.YES);
TextField titlefield=new TextField("title", article.getTitle(), Store.YES);
// 每个字段都有一个得分。。。默认为1f。 可以设置为原理的得分的多少5f
// 设置权重值...
//titlefield.setBoost(5f);
TextField contentfield=new TextField("content", article.getContent(), Store.YES);
document.add(idfield);
document.add(authorfield);
document.add(titlefield);
document.add(contentfield);
return document;
}
/**
* 将document 对象转换成article 对象,无非就是将索引库取出来的document放到article 对象当中...
* @param document
* @return
*/
public static Article documentToArticle(Document document){
Article article=new Article();
article.setId(Integer.parseInt(document.get("id")));
article.setTitle(document.get("title"));
article.setContent(document.get("content"));
article.setAuthor(document.get("author"));
return article;
}
}