posts - 27,comments - 2,trackbacks - 0
                          IndexReader reader = DirectoryReader.open(FSDirectory.open(new File("F:\\temp")));// 打開索引
          IndexSearcher searcher = new IndexSearcher(reader);
          Analyzer analyzer = new SmartChineseAnalyzer(Version.LUCENE_40);
          String[] fields = { "questionname","id" };
          Occur[] occurs = new Occur[] { Occur.SHOULD,Occur.SHOULD };
          Query query =  MultiFieldQueryParser.parse(Version.LUCENE_40, "測試 的", fields,
          occurs, analyzer);
          TopDocs result = searcher.search(query, searcher.getIndexReader()
          .maxDoc());
          ScoreDoc[] hits = result.scoreDocs;
          List<Document> list = new ArrayList<Document>();
          for (int i = 0; i <hits.length; i++) {
          Document doc = searcher.doc(hits[i].doc);
          list.add(doc);
          }
          System.out.println("搜索list的長度\t→→→→\t"+list.size());
          for (Document document : list) {
          System.out.println(document.getField("questionname"));
          }
          analyzer.close();

          注:紅色字體是輸入的檢索條件,多個用空格隔開,找到的結果先匹配同時符合多個的結果,結果只是拿過來的document一個list集合,具體結果再解析就行了。

          結果如圖:
          posted on 2013-08-12 17:26 魏文甫 閱讀(1180) 評論(1)  編輯  收藏

          FeedBack:
          # re: 簡單的lucene根據索引文件查詢(搜索引擎)
          2013-08-18 12:46 | tb
          前幾年研究過這個的  回復  更多評論
            

          只有注冊用戶登錄后才能發表評論。


          網站導航:
           
          主站蜘蛛池模板: 高邑县| 古田县| 历史| 泰和县| 昌黎县| 肇庆市| 深州市| 汝州市| 丹棱县| 额尔古纳市| 旺苍县| 贵阳市| 五指山市| 明星| 宽城| 正蓝旗| 临城县| 呼图壁县| 华阴市| 营山县| 云和县| 武邑县| 商洛市| 新密市| 嘉兴市| 加查县| 卫辉市| 宣化县| 东莞市| 彩票| 和平县| 宜兰市| 石首市| 达孜县| 新干县| 德州市| 昆明市| 云龙县| 安塞县| 绥江县| 岐山县|