lucene之创建索引代码

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了lucene之创建索引代码相关的知识,希望对你有一定的参考价值。

public void createIndex() throws IOException {

// 第一步采集数据:(jdbc采集数据)

BookDao dao = new BookDaoImpl();

List<Book> queryBookList = dao.queryBookList();

// 将数据采集放到docment对象中

Document doc = null;

List<Document> docList = new ArrayList<>();

for (Book book : queryBookList) {

// 根据需求创建不同的field     Store是是否存储

doc = new Document();

Field id = new TextField("id", book.getId().toString(), Store.YES);

Field name = new TextField("name", book.getName(), Store.YES);

Field price = new TextField("price", book.getPrice().toString(), Store.YES);

Field pic = new TextField("pic", book.getPic(), Store.YES);

Field desc = new TextField("description", book.getDescription(), Store.YES);

// field域,添加到文档对象中

doc.add(id);

doc.add(name);

doc.add(price);

doc.add(pic);

doc.add(desc);

docList.add(doc);

}

//创建一个indexWriter对象(通过它反向推理出需要的条件)

//先构造一个directory  指定索引库的位置,一般使用文件系统的目录。

FSDirectory directory = FSDirectory.open(new File("G:\\index01"));

//创建一个分词器 对文档中的Field域进行分词

Analyzer analyzer = new StandardAnalyzer();//标准分词器

IndexWriterConfig config = new IndexWriterConfig(Version.LATEST, analyzer);

IndexWriter writer = new IndexWriter(directory,config);

//创建索引

for (Document document : docList) {

writer.addDocument(document);

}

//关闭资源

writer.close();

}

以上是关于lucene之创建索引代码的主要内容,如果未能解决你的问题,请参考以下文章

Lucene初探之如何创建索引

Lucene初探之如何创建索引

Lucene入门精讲视频教程

Lucene初探之索引文件格式

Lucene初探之索引过程分析

Lucene初探之索引过程分析