在线观看不卡亚洲电影_亚洲妓女99综合网_91青青青亚洲娱乐在线观看_日韩无码高清综合久久

鍍金池/ 教程/ 大數(shù)據(jù)/ Lucene TermRangeQuery類
Lucene TermRangeQuery類
Lucene排序
Lucene Query類
Lucene搜索操作
Lucene TokenStream
Lucene IndexWriter類
Lucene Term類
Lucene Token
Lucene索引操作
Lucene Field選項(xiàng)
Lucene BooleanQuery類
Lucene StandardAnalyzer類
Lucene字段
Lucene添加文檔操作
Lucene環(huán)境設(shè)置
Lucene Searching類
Lucene StopAnalyzer類
Lucene第一個(gè)應(yīng)用程序
Lucene MatchAllDocsQuery類
Lucene IndexSearcher類
Lucene索引類
Lucene更新文檔操作
Lucene教程
Lucene PrefixQuery類
Lucene Analyzer類
Lucene TopDocs類
Lucene TermQuery類
Lucene文檔
Lucene查詢編程
Lucene WildcardQuery類
Lucene WhitespaceAnalyzer
Lucene SimpleAnalyzer類
Lucene目錄
Lucene刪除文檔操作
Lucene索引過程
Lucene FuzzyQuery類
Lucene PhraseQuery類
Lucene分析

Lucene TermRangeQuery類

TermRangeQuery是在使用的范圍內(nèi)的文本的詞條都被搜索。

類聲明

以下是org.apache.lucene.search.TermRangeQuery類的聲明:

public class TermRangeQuery
   extends MultiTermQuery

類的構(gòu)造函數(shù)

S.N. 構(gòu)造函數(shù)和說明
1 TermRangeQuery(String field, String lowerTerm, String upperTerm, boolean includeLower, boolean includeUpper)
構(gòu)造一個(gè)查詢選擇的所有條款大于/等于比lowerTerm,但小于/等于比upperTerm。
2 TermRangeQuery(String field, String lowerTerm, String upperTerm, boolean includeLower, boolean includeUpper, Collator collator)
構(gòu)造一個(gè)查詢選擇的所有條款大于/等于比lowerTerm,但小于/等于比upperTerm。

類方法

S.N. 方法及說明
1 boolean equals(Object obj) 
2 Collator getCollator()
返回用于確定范圍包括比較裝置,如果有的話。
3 protected FilteredTermEnum getEnum(IndexReader reader)
構(gòu)造所使用的枚舉,擴(kuò)大模式的詞條。
4 String getField()
此查詢返回字段名稱。
5 String getLowerTerm()
返回此范圍查詢的較低值。
6 String getUpperTerm()
返回此范圍查詢的上限值。
7 int hashCode() 
8 boolean includesLower()
返回true,如果下端點(diǎn)已包括。
9 boolean includesUpper()
返回true,如果上端點(diǎn)已包括。
10 String toString(String field)
打印這個(gè)查詢的一個(gè)用戶可讀的版本。

繼承的方法

這個(gè)類繼承了以下類方法:

  • org.apache.lucene.search.MultiTermQuery

  • org.apache.lucene.search.Query

  • java.lang.Object

使用

private void searchUsingTermRangeQuery(String searchQueryMin,
   String searchQueryMax)throws IOException, ParseException{
   searcher = new Searcher(indexDir);
   long startTime = System.currentTimeMillis();
   //create the term query object
   Query query = new TermRangeQuery(LuceneConstants.FILE_NAME, 
      searchQueryMin,searchQueryMax,true,false);
   //do the search
   TopDocs hits = searcher.search(query);
   long endTime = System.currentTimeMillis();

   System.out.println(hits.totalHits +
      " documents found. Time :" + (endTime - startTime) + "ms");
   for(ScoreDoc scoreDoc : hits.scoreDocs) {
      Document doc = searcher.getDocument(scoreDoc);
      System.out.println("File: "+ doc.get(LuceneConstants.FILE_PATH));
   }
   searcher.close();
}

應(yīng)用程序示例

讓我們創(chuàng)建一個(gè)測(cè)試Lucene的應(yīng)用程序中使用TermRangeQuery測(cè)試搜索。

步驟 描述
1 創(chuàng)建名稱為L(zhǎng)uceneFirstApplication的項(xiàng)目在packagecom.yiibai.lucene下的Lucene用于解釋 Lucene應(yīng)用程序理解搜索過程。
2 創(chuàng)建LuceneConstants.java和Searcher.java作為L(zhǎng)ucene的解釋- 第一應(yīng)用程序一章。保持其它文件不變。
3 創(chuàng)建LuceneTester.java如下所述。
4 清理和構(gòu)建應(yīng)用程序,以確保業(yè)務(wù)邏輯按要求工作。

LuceneConstants.java

這個(gè)類是用來提供可應(yīng)用于示例應(yīng)用程序中使用的各種常量。

package com.yiibai.lucene;

public class LuceneConstants {
   public static final String CONTENTS="contents";
   public static final String FILE_NAME="filename";
   public static final String FILE_PATH="filepath";
   public static final int MAX_SEARCH = 10;
}

Searcher.java

這個(gè)類用來讀取就使用Lucene庫(kù)的原始數(shù)據(jù),并搜索數(shù)據(jù)的索引。

package com.yiibai.lucene;

import java.io.File;
import java.io.IOException;

import org.apache.lucene.analysis.standard.StandardAnalyzer;
import org.apache.lucene.document.Document;
import org.apache.lucene.index.CorruptIndexException;
import org.apache.lucene上一篇:Lucene MatchAllDocsQuery類下一篇:Lucene Searching類