- 自己动手写分布式搜索引擎
- 罗刚
- 248字
- 2020-11-28 15:52:44
3.1.1 创建索引
先准备好文档数据,然后往索引库中加入文档。写入索引的过程如图3-2所示。
图3-2 写入索引
创建索引部分骨干伪代码。
//打开索引库 IndexWriter writer=new IndexWriter(dir); //写入一些文档 writer.addDocument(doc); //关闭索引库 writer.close();
一个Document代表索引库中的一条记录,也叫作文档。要搜索的信息封装成Document后通过IndexWriter写入索引库。
一个文档有多个列,例如,标题或者内容列。Lucene中的一个Document对象可以包含多个列对象,叫作Field。例如,一个网页可以包含“网址”“标题”“正文”“修改时间”等Field。创建这些列对象以后,可以通过Document的add()方法增加这些列。代码如下。
Document doc = new Document(); //创建网址列 Field f = new Field("url", "http://www.lietu.com" , Field.Store.YES, Field.Index.UN_TOKENIZED, Field.TermVector.NO); doc.add(f);