2012-10-06 34 views

回答

3

简短的回答:

您需要删除并重新添加的文件,它的存储领域,它的索引字段。 参见IndexWriter.updateDocument() Javadoc

“通过首先删除包含项的文件(一个或多个),然后加入新文档更新的文件的删除,然后添加是原子通过在相同的索引的读取器所看到(齐平可能。只有在添加之后才会发生)“。

另一种替代方案可能是存储任何需要在Lucene之外更新的数据(比如在关系数据库中)。

还有的work in progress各种以允许就地更新,存储或索引字段,但是没有具体的Lucene的V4或更早版本。