用Lucene 做全文搜索,其他基本解决了,就是显示检索的内容为“NULL”,如何将内容显示出来?像GOOGLE一样,既有标题,又有一部分内容
doc.add(new Field("title", title, Field.Store.YES, Field.Index.TOKENIZED));
doc.add(new Field("contents", txtReader));//这样写出来的的NULL,不知道怎么写了。

解决方案 »

  1.   

    建议查查随机文档。demo中应有示范吧。
      

  2.   

    顶一下,又知道新的knowledge了赫赫和
      

  3.   

    doc.add(new   Field( "title ",   title,   Field.Store.YES,   Field.Index.TOKENIZED));
    doc.add(new   Field( "contents ",   txtReader));标题可以显示,因为你用了 Field.Store.YES 说明此域存储在索引文件中,
    new   Field( "contents ",   txtReader)构造方法中是Field.Index.TOKENIZED和Field.Store.NO的。
    所以用 doc.get("contents"); 内容为 null了。因为它只是被索引了,而并没有被存储下来。如果一定要看到文章的内容的话可以通过文章的路径得到。毕竟文章的路径是作为搜索的附属物被搜索出来了。 如果是在Web开发的时候一般是将大数据放在数据库中,不会放在文件系统中,更不会放在索引目录里,像百度的快照一样,因为它太大了操作会加大服务器的负担。