• 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);
  • 相关阅读:
    mysql修改库、表、字段 字符集,中文排序
    CENTOS6.5 编译安装MySQL5.7.14
    自己的一个小小的目标
    css 浮动和清除浮动
    移动端调试方法
    Fiddler抓包工具总结
    Vue中错误图片的处理
    跨域资源共享 CORS 详解
    十大排序算法JavaScript实现总结
    javascript实现二叉搜索树
  • 原文地址:https://www.cnblogs.com/pony/p/1486281.html
Copyright © 2020-2023  润新知