zoukankan      html  css  js  c++  java
  • Luncene学习二《搜索索引》

    搜索索引的流程

    第一步:创建一个Directory对象,也就是索引库存放的位置

    第二步:创建一个IndexReader对象,需要指定Directory对象

    第三步:创建一个indexsearcher对象,需要指定IndexReader对象

    第四步:创建一个TermQuery对象,指定查询的域和查询的关键词。

    第五步:执行查询.

    第六步:返回查询结果。遍历查询结果并输出。

    第七步:关闭IndexReader对象

     1 // 搜索索引
     2     @Test
     3     public void testSearch() throws Exception {
     4         // 第一步:创建一个Directory对象,也就是索引库存放的位置。
     5         Directory directory = FSDirectory.open(new File("D:\temp\index"));// 磁盘
     6         // 第二步:创建一个indexReader对象,需要指定Directory对象。
     7         IndexReader indexReader = DirectoryReader.open(directory);
     8         // 第三步:创建一个indexsearcher对象,需要指定IndexReader对象
     9         IndexSearcher indexSearcher = new IndexSearcher(indexReader);
    10         // 第四步:创建一个TermQuery对象,指定查询的域和查询的关键词。
    11         Query query = new TermQuery(new Term("fileName", "lucene"));
    12         // 第五步:执行查询。
    13         TopDocs topDocs = indexSearcher.search(query, 10);
    14         // 第六步:返回查询结果。遍历查询结果并输出。
    15         ScoreDoc[] scoreDocs = topDocs.scoreDocs;
    16         for (ScoreDoc scoreDoc : scoreDocs) {
    17             int doc = scoreDoc.doc;
    18             Document document = indexSearcher.doc(doc);
    19             // 文件名称
    20             String fileName = document.get("fileName");
    21             System.out.println(fileName);
    22             // 文件内容
    23             String fileContent = document.get("fileContent");
    24             System.out.println(fileContent);
    25             // 文件大小
    26             String fileSize = document.get("fileSize");
    27             System.out.println(fileSize);
    28             // 文件路径
    29             String filePath = document.get("filePath");
    30             System.out.println(filePath);
    31             System.out.println("------------");
    32         }
    33         // 第七步:关闭IndexReader对象
    34         indexReader.close();
    35 
    36     }

    执行之后的效果

  • 相关阅读:
    黑域,黑阈 Permission denied
    手机闪存速度测试工具,AndroBench
    找进程的窗口Handle
    nginx http 正向代理
    windows命令行netstat 统计连接数
    FLIR ONE PRO热成像仪
    python2.0_s12_day14_jQuery详解
    python2.0_s12_day13_javascript&Dom&jQuery
    ssh&scp指定密钥
    apache+php生产环境错误记录
  • 原文地址:https://www.cnblogs.com/kangxinxin/p/8018125.html
Copyright © 2011-2022 走看看