官术网_书友最值得收藏!

Creating fields

We have learned that indexing information in Lucene requires the creation of document objects. A Lucene document contains one or more field where each one represents a single data point about the document. A field can be a title, description, article ID, and so on. In this section, we will show you the basic structure and how to create a field.

A Lucene field has three attributes:

  • Name
  • Type
  • Value

Name and value are self-explanatory. You can think of a name as a column name in a table, and value as a value in one of the records where record itself is a document. Type determines how the field is treated. You can set FieldType to control whether to store value, to index it or even tokenize text. A Lucene field can hold the following:

  • String
  • Reader or preanalyzed TokenStream
  • Binary(byte[])
  • Numeric value

How to do it...

This code snippet shows you how to create a simple TextField:

  Document doc = new Document();
  String text = "Lucene is an Information Retrieval library written in Java.";
  doc.add(new TextField("fieldname", text, Field.Store.YES));

How It Works

In this scenario, we create a document object, initialize a text, and add a field by creating a TextField object. We also configure the field to store a value so it can be retrieved during a search.

A Lucene document is a collection of field objects. A field is the name of the value pairs, which you may add to the document. A field is created by simply instantiating one of the Field classes. Field can be inserted into a document via the add method.

主站蜘蛛池模板: 铜梁县| 铜鼓县| 苏州市| 广东省| 内江市| 双牌县| 那坡县| 嵊州市| 扎鲁特旗| 徐水县| 雷波县| 余姚市| 清流县| 梨树县| 晋中市| 航空| 黄平县| 万州区| 磐石市| 固原市| 齐齐哈尔市| 镇平县| 淳化县| 东至县| 安图县| 宜州市| 洞口县| 邓州市| 湟中县| 德庆县| 抚宁县| 华安县| 大丰市| 东乡县| 即墨市| 宁津县| 贵德县| 浠水县| 习水县| 高要市| 桐城市|