- Lucene 4 Cookbook
- Edwood Ng Vineeth Mohan
- 258字
- 2021-07-16 14:07:48
Creating and writing documents to an index
This recipe shows you how to index a document. In fact, here we are putting together all that we learned so far from the previous recipes. Let's see how it is done.
How to do it...
The following code sample shows you an example of adding a simple document to an index:
public class LuceneTest { public static void main(String[] args) throws IOException { Analyzer analyzer = new WhitespaceAnalyzer(); Directory directory = new RAMDirectory(); IndexWriterConfig config = new IndexWriterConfig(Version.LATEST, analyzer); IndexWriter indexWriter = new IndexWriter(directory, config); Document doc = new Document(); String text = "Lucene is an Information Retrieval library written in Java"; doc.add(new TextField("fieldname", text, Field.Store.YES)); indexWriter.addDocument(doc); indexWriter.close(); } }
Tip
Downloading the example code
You can download the example code files from your account at http://www.packtpub.com for all the Packt Publishing books you have purchased. If you purchased this book elsewhere, you can visit http://www.packtpub.com/support and register to have the files e-mailed directly to you.
How it works…
Note that the preceding code snippet combined all the sample codes we learned so far. It first initializes an analyzer, directory, IndexWriterConfig
, and IndexWriter
. Once the IndexWriter is obtained, a new Document is created with a custom TextField
. The Document is then added to IndexWriter. Also, note that we call indexWriter.close()
at the end. calling this method, will commit all changes and close the index.
The IndexWriter
class exposes an addDocument(doc)
method that allows you to add documents to an index. IndexWriter
will write to an index specified by directory.
- Git Version Control Cookbook
- Android Application Development Cookbook(Second Edition)
- 琢石成器:Windows環境下32位匯編語言程序設計
- Scientific Computing with Scala
- H5頁面設計:Mugeda版(微課版)
- Angular開發入門與實戰
- Swift Playgrounds少兒趣編程
- C++從入門到精通(第5版)
- FFmpeg開發實戰:從零基礎到短視頻上線
- Photoshop智能手機APP界面設計
- Instant Apache Camel Messaging System
- Jenkins 2.x Continuous Integration Cookbook(Third Edition)
- Java從入門到精通(第7版)
- 小學生Python創意編程(視頻教學版)
- Professional Azure SQL Database Administration