Lucene 1.*版本和2.*版本的Field

[code="java"]
//2.0+
doc.add(new Field("file",file.getName(),Field.Store.YES,Field.Index.NO));
//1.0+
doc.add(Field.UnIndexed("file", file.getName()));
[/code]

Keyword对应Field.Store.YES, Field.Index.UN_TOKENIZED,
UnIndexed 对应Field.Store.YES, Field.Index.NO,
UnStored对应Field.Store.NO, Field.Index.TOKENIZED,
Text对应Field.Store.YES, Field.Index.TOKENIZED

这些Keyword,UnIndexed,UnStored,Text到底是什么意思啊?有用过Lucene介绍一下,这样创建Index的区别在那里?
我也看了一些资料,就是不明白里面的意思

Field.Index Field.Store 说明
TOKENIZED(分词) YES 被分词索引且存储
TOKENIZED NO 被分词索引但不存储
NO YES 这是不能被搜索的,它只是被搜索内容的附属物。如URL等
UN_TOKENIZED YES/NO 不被分词,它作为一个整体被搜索,搜一部分是搜不出来的
NO NO 没有这种用法
[b]问题补充:[/b]

Field.Index 这个字段是否用于创建index(只有创建了index 才能检索)

不能检索创建这个Field干什么啊?
不能保存创建这个Field干什么啊?
这样做的目地是为什么?

还有他们这既能保存又能Index这样数据量大了之后速度会很慢
[b]问题补充:[/b]
这些问题怎么解决啊??请教
[b]问题补充:[/b]
创建Index不存储是什么意思,能搜到吗
存储不创建Index又是什么意思,能搜到吗

我不明白啊?能解决一下嘛。。。谢谢了

Keyword,UnIndexed,UnStored,Text 这些是定义的一些统一的处理方式

具体怎么处理的 看后面的Field.Store.YES, Field.Index.UN_TOKENIZED这些

Field.Store 就是说这个字段是否需要存储(存储了 以后你就能显示出来 就像google的cache page)
Field.Index 这个字段是否用于创建index(只有创建了index 才能检索)

[color=red]不能检索创建这个Field干什么啊?
不能保存创建这个Field干什么啊? [/color]

别想什么都从自己的需求出发

朋友,问题要自动关闭啦,结分哦