您的位置:首页 > 运维架构 > Apache

lucene.apache.org部分译文(getting started)

2005-10-06 22:00 218 查看
索引文件
        main函数实例化一个IndexWriter的实例,传递一个称为index的字符串和一个称为StandardAnalyer的类的实例。字符串index是所有索引信息将被保存的目录名称。由于我们不能传递任何路径信息,所以我们必须假设它被创建为当前目录的一个子目录(如果没有被创建的话)。在某些平台上这样做的实际结果会创建在其他目录中(比如用户的个人home目录)。
        IndexWriter用于创建索引。要使用它就必须用一个可写入索引的目录路径来对它进行实例化,路径指向的目录不存在时就会自动创建,否则将刷新保存在指定目录中的索引。也必须传递一个org.apache.analysis.Analyzer的实例。
        Analyzer(分析器),在这个实例中,Stop Analyzer比一个标准的java Tokenizer强一点,把所有字符串转化为小写,并且从索引中过滤无用的字,无用的字是指一般语言中类似a,an,the一样对搜索没有帮助的字。在这里必须根据每种语言的不同规则来标记,并且必须对每种语言使用合适的分析器。Lucene目前提供英语和德语的分析器。
        indexDocs()部分的代码简单地抓取目录并使用FileDocument来创建文档对象。这个文档是表达文件内容的数据对象,就像文件的创建时间和位置一样。这些实例都被加入到indexWriter中,看一看FileDocument并不复杂,它只是在文档中加入了一些字段而已。
        创建一个索引其实没什么。困扰之处主要在于细节。你也许希望检验目录中的其他例子,尤其是IndexHTML类,它在IndexFiles的例子之上构成,只复杂一点点。
搜索文件
        SearchFiles类非常简单。它先联合一个IndexSearcher,StandardAnalyzer和一个QueryParser.查询分析器是一个用来翻译用户查询(和索引被翻译的方式相同)的分析器构成的:在查询字中去掉无用的字。Query对象包括来自QueryParser的结果,查询结果以一个称为"Hits"的文档collection返回,可被遍历并显示给用户。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息