• 查询索引之代码开发


    【实现步骤】

    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~
  • 相关阅读:
    Spring:ContextLoaderListener作用
    正确理解UNICODE UTF8等编码方式
    context:propertyplaceholder/元素
    org.springframework.web.context.ContextLoaderListener作用
    javascript下ie7,ie8的Date Bug的解决
    margin负值的几种妙用
    小米note3,华为手机,软键盘弹出之后,页面上定位的元素布局会乱掉
    当padding,margin,top为百分比值,具体数值如何计算
    PHP处理二维数组合并 时间复杂度O(n)
    redis常用操作整理
  • 原文地址:https://www.cnblogs.com/zhzcode/p/9806180.html
Copyright © 2020-2023  润新知