source: trunk/gsdl/src/java/org/nzdl/gsdl/LuceneWrap/GS2LuceneQuery.java@ 8521

Last change on this file since 8521 was 8521, checked in by davidb, 19 years ago

java bridge from how greensotne likes to do indexing and querying to lucenes classes

  • Property svn:keywords set to Author Date Id Revision
File size: 2.0 KB
RevLine 
[8521]1/*
2 * search.java
3 *
4 * Created on 25 February 2003, 02:25
5 */
6
7
8/**
9 *
10 * @author [email protected]
11 * @author [email protected]
12 * @version
13 */
14
15import java.io.IOException;
16import java.io.BufferedReader;
17import java.io.InputStreamReader;
18
19import org.apache.lucene.analysis.Analyzer;
20import org.apache.lucene.analysis.standard.StandardAnalyzer;
21import org.apache.lucene.document.Document;
22import org.apache.lucene.search.Searcher;
23import org.apache.lucene.search.IndexSearcher;
24import org.apache.lucene.search.Query;
25import org.apache.lucene.search.Hits;
26import org.apache.lucene.queryParser.QueryParser;
27import org.apache.lucene.search.TermQuery;
28import org.apache.lucene.index.Term;
29
30public class GS2LuceneQuery {
31
32 public static void main (String args[]) {
33
34 if (args.length == 0) {
35 System.out.println("Usage: GS2LuceneQuery <index directory>");
36 return;
37 }
38 try {
39 Searcher searcher = new IndexSearcher(args[0]);
40 Analyzer analyzer = new StandardAnalyzer();
41
42 BufferedReader in = new BufferedReader(new InputStreamReader(System.in));
43 while (true) {
44 String line = in.readLine();
45
46 if (line == null) {
47 break;
48 }
49
50 if (line.length() == -1)
51 break;
52
53
54 // Term term = new Term("TX",line);
55 // Query query = new TermQuery(term);
56
57 System.err.println("**** query = " + line);
58
59 Query query = QueryParser.parse(line, "TX", analyzer);
60
61 Hits hits = searcher.search(query);
62 System.out.println("<ResultSet>");
63 System.out.println(" <QueryString>" + query.toString("TX")+"</QueryString>");
64 System.out.println(" <MatchingDocsInfo num=\""+hits.length()+"\"/>");
65
66 for (int i=0; i< hits.length(); i++) {
67 Document doc = hits.doc(i);
68 String node_id= doc.get("nodeID");
69 System.out.println(" <Match id=\""+node_id+"\"/>");
70 }
71 System.out.println("</ResultSet>");
72
73 }
74
75 searcher.close();
76 }
77 catch (Exception e) {
78 System.out.println(" caught a " + e.getClass() +
79 "\n with message: " + e.getMessage());
80 }
81 }
82}
Note: See TracBrowser for help on using the repository browser.