这是写入字段的代码
while(res.next()){
doc = new Document();
doc.getFields().add(new TextField("newstitle", res.getString(1), Field.Store.YES));
doc.getFields().add(new TextField("newsmodel", res.getString(2), Field.Store.YES));
doc.getFields().add(new IntField("newsid", Integer.parseInt(res.getString(3)), Field.Store.YES));
doc.getFields().add(new StringField("writetime", res.getString(4), Field.Store.YES));
iw.addDocument(doc);
}
这是读取代码段
for(int i = begin;i < end;i++){
int docid = docs[i].doc;
Document doc = search.doc(docid);
System.out.println(doc.get("newstitle"));
System.out.println(doc.get("writetime"));
System.out.println(doc.get("newsid"));
String newstitle = hi.getBestFragment(new IKAnalyzer(), "newstitle", doc.get("newstitle"));
String newsmodel = hi.getBestFragment(new IKAnalyzer(), "newsmodel", doc.get("newsmodel"));
String writetime = doc.get("writetime");
String newsid = doc.get("newsid");
News1 news = new News1();
news.setNewsid(newsid);
news.setNewstitle(newstitle);
news.setNewsmodel(newsmodel);
news.setWritetime(writetime);
list.add(news);
}
我读取不到newsid和writetime,但是在数据库确实取出来,分词器用的是IKAnalyzer