计算机教程

当前位置:澳门娱乐场网址 > 计算机教程 > 使用Lucene对预处理后的文档进行创建索引(可运

使用Lucene对预处理后的文档进行创建索引(可运

来源:http://www.ablakeforum.com 作者:澳门娱乐场网址 时间:2019-11-04 14:21

利用Lucene的IndexWriter建立索引(详解)

对于文档的预处理后,就要开始使用Lucene来处理相关的内容了。

/*
 * 建立索引,然后把建立后的文档添加到索引中去
 * 提示先使用Document和Field把Field加入到Document中去,
澳门娱乐场网址, * 接着把Document建立成为一个索引
 * */
package comThree;

这里使用的Lucene的步骤如下:

import java.io.IOException;

首先要为处理对象机那里索引

import org.apache.lucene.analysis.standard.StandardAnalyzer;
import org.apache.lucene.document.Document;
import org.apache.lucene.document.Field;
import org.apache.lucene.index.IndexWriter;

二是构建查询对象

public class BookIndex{

三是在索引中查找

//创建索引的目录
private String INDEX_PATH = "E:\Lucene项目\索引目录";
Document  bookdoc1 = null;
public BookIndex(){

这里的代码是处理创建索引的部分

bookdoc1 = new Document();
System.out.println("开始创建书的Field字段---------->>>>");

代码:

//书的编号
Field bookNo = new Field("booknumber", "FB309663004", Field.Store.YES, Field.Index.TOKENIZED);
//书名
Field bookName = new Field("bookName", "钢铁是怎样炼成的", Field.Store.YES, Field.Index.TOKENIZED );

package ch2.lucenedemo.process;

//书的作者
Field anthor = new Field("author", "匿名", Field.Store.YES, Field.Index.TOKENIZED);

import java.io.BufferedReader;
import java.io.File;
import java.io.FileReader;
import java.io.IOException;

//出版日期
Field publishdate = new Field("publishdate", "出版日期", Field.Store.YES, Field.Index.NO);

import jeasy.analysis.MMAnalyzer;

//描述
Field bookabstract = new Field("abstract", "钢铁是怎样炼成的", Field.Store.NO, Field.Index.TOKENIZED);

import org.apache.lucene.document.Document;
import org.apache.lucene.document.Field;
import org.apache.lucene.document.Field.Index;
import org.apache.lucene.index.IndexWriter;
public class IndexProcessor {
//成员变量,存储创建的索引文件存放的位置
private String INDEX_STORE_PATH = "E:\Lucene项目\索引目录";

//价格
Field price = new Field("price", "25.00", Field.Store.YES, Field.Index.NO);

//创建索引
public void createIndex(String inputDir){
try
{
System.out.println("程序开始运行,正在创建索引->->->->->");
IndexWriter writer = new IndexWriter(INDEX_STORE_PATH, new MMAnalyzer(), true);

System.out.println("完成创建书的Field字段---------->>>>");

File filesDir = new File(inputDir);

System.out.println("开始将书的字段放入到文档中-------------》》");
//把Field加入Document
bookdoc1.add(bookNo);
bookdoc1.add(bookName);
bookdoc1.add(bookabstract);
bookdoc1.add(publishdate);
bookdoc1.add(price);

//取得所有需要建立索引的文件数组
File[] files = filesDir.listFiles();

本文由澳门娱乐场网址发布于计算机教程,转载请注明出处:使用Lucene对预处理后的文档进行创建索引(可运

关键词: