DANCE WITH JAVA

          開發出高質量的系統

          常用鏈接

          統計

          積分與排名

          好友之家

          最新評論

          lucene建立索引時候的用到的一些文檔和目錄操作

          在前邊的文章中多是用的添加一個document,這里介紹一下其它的文檔操作
          1,按照編號刪除
          public void deleteDoc(String indexDir) throws Exception{
                  IndexReader reader 
          = IndexReader.open(indexDir);
                  reader.delete(
          1);
                  reader.close();
              }
          2,根據term來刪除
          public void deleteDocWithTerm(String indexDir) throws Exception{
                  IndexReader reader 
          = IndexReader.open(indexDir);
                  reader.delete(
          new Term("city","beijing"));
                  reader.close();
              }
            3,取消刪除
          public void undeleteDoc(String indexDir) throws Exception{
                  IndexReader reader 
          = IndexReader.open(indexDir);
                  reader.delete(
          1);
                  reader.undeleteAll();
                  reader.close();
              }
          4,刪除后優化
          public void mergeDoc(String indexDir) throws Exception{
                  IndexReader reader 
          = IndexReader.open(indexDir);
                  reader.delete(
          new Term("city","beijing"));
                  reader.close();
                  
                  IndexWriter writer 
          = new IndexWriter(indexDir,new StandardAnalyzer(),true);
                  writer.optimize();
                  writer.close();
              }

          5,把RAMDirectory中的索引合并到FSDirectroy中
          public void indexOperator(String indexDir) throws Exception{
                  FSDirectory fsDir 
          = FSDirectory.getDirectory(indexDir,true);
                  RAMDirectory ramDir 
          = new RAMDirectory();
                  IndexWriter fsWriter 
          = new  IndexWriter(fsDir,new SimpleAnalyzer(),true);
                  IndexWriter ramWriter 
          = new IndexWriter(ramDir,new SimpleAnalyzer(),true);
                  
          //..ramWriter add doc
                  fsWriter.addIndexes(new Directory[]{ramDir});
                  ramWriter.close();
                  
              }
          6,把索引的內容直接讀入內存
          RAMDirectory ramDir = new RAMDirectory(indexDir);

          posted on 2007-06-20 16:43 dreamstone 閱讀(4011) 評論(0)  編輯  收藏 所屬分類: 搜索引擎lucence

          主站蜘蛛池模板: 延津县| 太仓市| 梁河县| 青龙| 宜川县| 静宁县| 凤庆县| 敖汉旗| 宁陵县| 遂宁市| 科技| 女性| 凌海市| 黑龙江省| 宁陵县| 固始县| 余庆县| 大竹县| 汉川市| 三亚市| 噶尔县| 商丘市| 上犹县| 大石桥市| 西城区| 阿坝县| 来宾市| 宝山区| 宝鸡市| 安仁县| 乡宁县| 英德市| 阳城县| 宁南县| 准格尔旗| 绵竹市| 沧州市| 宜春市| 易门县| 久治县| 盱眙县|