Over a million developers have joined DZone.

Java: Lucene: Simple Indexing And Searching Example (from Javadoc)

DZone's Guide to

Java: Lucene: Simple Indexing And Searching Example (from Javadoc)

· ·
Free Resource

public void simpleLucene()
    Analyzer analyzer = new StandardAnalyzer();

    // Store the index in memory:
    Directory directory = new RAMDirectory();

    // To store an index on disk, use this instead (note that the 
    // parameter true will overwrite the index in that directory
    // if one exists):
    // Directory directory = FSDirectory.getDirectory("/tmp/testindex", true);

    IndexWriter iwriter = new IndexWriter(directory, analyzer, true);

    Document doc = new Document();
    String text = "This is the text to be indexed.";
    doc.add(new Field("fieldname", text, Field.Store.YES,
    // Now search the index:
    IndexSearcher isearcher = new IndexSearcher(directory);

    // Parse a simple query that searches for "text":
    QueryParser parser = new QueryParser("fieldname", analyzer);
    Query query = parser.parse("text");
    Hits hits = isearcher.search(query);
    assertEquals(1, hits.length());

    // Iterate through the results:
    for (int i = 0; i < hits.length(); i++)
      Document hitDoc = hits.doc(i);
      assertEquals("This is the text to be indexed.", hitDoc.get("fieldname"));


Opinions expressed by DZone contributors are their own.

{{ parent.title || parent.header.title}}

{{ parent.tldr }}

{{ parent.urlSource.name }}