lucene學習筆記

2021-06-22 09:49:45 字數 1454 閱讀 8959

public class luceneadd  catch (exception e) 

}}

public class lucenesearch {

public static void main(string args) {

file indexdir = new file("d:\\index");

try {

//在磁碟中檢索索引

directory directory = fsdirectory.open(indexdir);

//索引檔案讀取類

indexreader reader = indexreader.open(directory);

//建立乙個從索引中搜尋結果的類

indexsearcher searcher = new indexsearcher(reader);

//分詞

analyzer analyzer = new standardanalyzer(version.lucene_31);

/** 建立解析查詢語句的類

*/queryparser qp = new queryparser(version.lucene_31,"content",analyzer);

query querys1 = qp.parse("內容");

/** 如果你想對某單詞進行萬用字元查詢,你可以用wildcardquery,

* 萬用字元包括』?』匹配乙個任意字元和』*』匹配零個或多個任意字元,

* 例如你搜尋』use*』,你可能找到』useful』或者』useless』:

*/query querys2 = new wildcardquery(new term("content","內容"+"*"));

/** 如果你想執行乙個這樣的查詢:"在content域中包含'內容'的document",那麼你可以用termquery

*/term t = new term("content","內容");

query querys3 = new termquery(t);

/** 你可能對慈禧比較感興趣,

* 那麼它可能搜到「慈聯……」、「慈禧和八國聯軍……」,但是搜不到「慈禧曾經高調向八國聯軍宣戰」。

*/phrasequery querys4 = new phrasequery();

querys4.setslop(4);

querys4.add(new term("content", "慈"));

querys4.add(new term("content", "聯"));

if(searcher != null){

scoredoc sd = searcher.search(querys1, reader.maxdoc()).scoredocs;

system.out.println(sd.length);

for(int i=0;i

Lucene 學習筆記

調整索引索引效能 在乙個典型的索引應用中,程式效能的瓶頸存在於將索引檔案寫入磁碟的過程中。如果你曾經分析過索引過索引應用程式,應該會發現執行程式大部分時間都消耗在操作索引檔案的程式段上,因此我們必要使lucene索引新物件和修改索引檔案時變得更智慧型。當新的document物件新增到lucene的索...

Lucene學習筆記

1 lucene的field中的store和index屬性 如果field的store是yes的話,表明這個資料是要儲存在lucene檔案中的,可以用get方法得到 如果field的index是analyzed的話,表明這個資料是有被索引的,可以被搜尋的。這個兩個屬性的四種組合分別的含義是 a st...

lucene學習筆記

2 非結構化資料 2 資料的查詢 2 非結構化資料的查詢 3 全文檢索 2 站內搜尋 論壇搜尋 微博 文章搜尋 3 電商搜尋 搜尋 京東搜尋 4 只要是有搜尋的地方就可以使用全文檢索技術。2 查詢索引 test public void createindex throws exception 6 關...