Lucene之Field常用型別

2021-09-08 03:35:15 字數 1695 閱讀 8098

field型別

資料型別

是否分詞

是否索引

是否儲存

說明stringfield(fieldname, fieldvalue, store.yes)

字串n

yy/n

字串型別field, 不分詞, 作為乙個整體進行索引(如: 身份證號, 訂單編號), 是否需要儲存由store.yes或store.no決定

longfield(fieldname, fieldvalue, store.yes)

數值型代表yy

y/nlong數值型field代表, 分詞並且索引(如: **), 是否需要儲存由store.yes或store.no決定

storedfield(fieldname, fieldvalue)

過載方法, 支援多種型別nn

y構建不同型別的field, 不分詞, 不索引, 要儲存. (如: 商品路徑)

textfield(fieldname, fieldvalue, store.no)

文字型別yy

y/n文字型別field, 分詞並且索引, 是否需要儲存由store.yes或store.no決定

field(fieldname, fieldvalue, fieldtype)

自定義型別yy

y/n自定義是否儲存、索引、分類、設定權重等

是否儲存:需要給使用者返回的資訊都需要儲存,如不儲存則無法返回

// stringfield型別

field sfield =

newstringfield

("sfield"

, stringfield, field.store.yes)

;//longfield型別

field lfield =

newlongfield

("lfield"

, longfield, field.store.yes)

;//storedfield型別

field sfield2 =

newstoredfield

("sfield2"

, storedfield, field.store.yes)

;//textfield型別

field tfield =

newtextfield

("tfield"

, textfield, field.store.yes)

;//自定義型別

fieldtype fieldtype =

newfieldtype()

;// 重構fieldtype類

fieldtype.

setindexed

(true);

// set 是否索引

fieldtype.

setstored

(true);

// set 是否儲存

fieldtype.

settokenized

(true);

// set 是否分類

fieldtype.

setomitnorms

(false);

// set 是否可以設定權重

field field =

newfield

("field"

, field, fieldtype)

;

Solr中Field常用屬性

fieldtype 例項 name 就是 fieldtype 的名稱 class 指向了 org.apache.slor.analysis 對應的class 名稱,用這個來定義型別的行為 field 例項 name 是查詢時的名稱 type 這個是之前定義的 fieldtype 的名稱 indexe...

Lucene學習筆記之域常用型別

field 類資料型別 analyzed是否分詞 indexed是否索引 stored是否儲存 說明stringfield fieldname,fieldvalue,store.yes 字串 ny y或n這個field用來構建乙個字串field 但是不會進行分詞,會將整個串存 儲在索引中,比如 訂單...

lucene使用教程3 常用類的物件

你需要以下類來執行這個簡單的索引與搜尋的過程 1 indexwriter 2 indexsearcher 3 indexreader 4 directory 5 analyzer 6 document 7 field 8 term 9 query 10 termquery 11 hits 接下來是對...