zoukankan      html  css  js  c++  java
  • 查询索引之代码开发

    【实现步骤】

    1.创建一个Directory对象,也就是索引库存放的位置。

    2.创建一个indexReady对象,需要指定Directory对象。

    3.创建一个indexsearcher对象,需要指定indexReady对象。

    4.创建一个TermQuery对象,指定查询的域和查询的关键词。

    5.执行查询。

    6.返回查询结果,遍历查询结果并输出。

    7.关闭indexReader对象。

    【IndexSearch搜索方法】

    【代码开发】

     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", "java"));
    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     }
    每接触一个新领域,我就像一块掉进水里的海绵,四面八方的养分都让我不断充实。O(∩_∩)O~
  • 相关阅读:
    敏捷开发宣言
    OpenGL SL 优化要点
    Cocoa Touch 开发框架
    MSIL详解
    Android之Services
    Android之ActivityII
    Android之Activity
    托管执行过程
    Android之Content ProviderII
    Android之Content Providers
  • 原文地址:https://www.cnblogs.com/zhzcode/p/9806180.html
Copyright © 2011-2022 走看看