X-Git-Url: https://git.mdrn.pl/pylucene.git/blobdiff_plain/a2e61f0c04805cfcb8706176758d1283c7e3a55c..aaeed5504b982cf3545252ab528713250aa33eed:/lucene-java-3.5.0/lucene/src/java/overview.html diff --git a/lucene-java-3.5.0/lucene/src/java/overview.html b/lucene-java-3.5.0/lucene/src/java/overview.html new file mode 100644 index 0000000..83ae570 --- /dev/null +++ b/lucene-java-3.5.0/lucene/src/java/overview.html @@ -0,0 +1,193 @@ + + + +
+Apache Lucene is a high-performance, full-featured text search engine library. +Here's a simple example how to use Lucene for indexing and searching (using JUnit +to check if the results are what we expect):
+ + + + + + +
+ Analyzer analyzer = new StandardAnalyzer(Version.LUCENE_CURRENT);
+
+ // Store the index in memory:
+ Directory directory = new RAMDirectory();
+ // To store an index on disk, use this instead:
+ //Directory directory = FSDirectory.open("/tmp/testindex");
+ IndexWriter iwriter = new IndexWriter(directory, analyzer, true,
+ new IndexWriter.MaxFieldLength(25000));
+ Document doc = new Document();
+ String text = "This is the text to be indexed.";
+ doc.add(new Field("fieldname", text, Field.Store.YES,
+ Field.Index.ANALYZED));
+ iwriter.addDocument(doc);
+ iwriter.close();
+
+ // Now search the index:
+ IndexReader ireader = IndexReader.open(directory); // read-only=true
+ IndexSearcher isearcher = new IndexSearcher(ireader);
+ // Parse a simple query that searches for "text":
+ QueryParser parser = new QueryParser("fieldname", analyzer);
+ Query query = parser.parse("text");
+ ScoreDoc[] hits = isearcher.search(query, null, 1000).scoreDocs;
+ assertEquals(1, hits.length);
+ // Iterate through the results:
+ for (int i = 0; i < hits.length; i++) {
+ Document hitDoc = isearcher.doc(hits[i].doc);
+ assertEquals("This is the text to be indexed.", hitDoc.get("fieldname"));
+ }
+ isearcher.close();
+ ireader.close();
+ directory.close();
+
+
+
+
+
+The Lucene API is divided into several packages:
+ +> java -cp lucene.jar:lucene-demo.jar:lucene-analyzers-common.jar org.apache.lucene.demo.IndexFiles rec.food.recipes/soups ++ + +
adding rec.food.recipes/soups/abalone-chowder +
[ ... ] + +> java -cp lucene.jar:lucene-demo.jar:lucene-analyzers-common.jar org.apache.lucene.demo.SearchFiles +
Query: chowder +
Searching for: chowder +
34 total matching documents +
1. rec.food.recipes/soups/spam-chowder +
[ ... thirty-four documents contain the word "chowder" ... ] + +Query: "clam chowder" AND Manhattan +
Searching for: +"clam chowder" +manhattan +
2 total matching documents +
1. rec.food.recipes/soups/clam-chowder +
[ ... two documents contain the phrase "clam chowder" +and the word "manhattan" ... ] +
[ Note: "+" and "-" are canonical, but "AND", "OR" +and "NOT" may be used. ]