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

          主站蜘蛛池模板: 墨玉县| 呼和浩特市| 大余县| 繁昌县| 定安县| 广州市| 金阳县| 涞源县| 津市市| 沙洋县| 乃东县| 综艺| 专栏| 乐安县| 肇源县| 灯塔市| 邵东县| 丰城市| 建平县| 辽阳县| 法库县| 手游| 宜昌市| 荣成市| 广西| 仁怀市| 永城市| 读书| 江永县| 两当县| 绩溪县| 那坡县| 文水县| 阳江市| 壶关县| 南昌市| 丰城市| 兴业县| 麟游县| 新疆| 桂林市|