当修改、删除或插入数据的时候,如果短时间内没有关闭IndexWriter,可以使用commit来提交当前的更新,这样的话indexReader马上可以察觉到索引被更新。
修改:
indexWriter.updateDocument(
new
Term(
"id"
,
"1"
), document);
indexWriter.commit();
把id等于1的那条数据修改成document这条数据,如果不存在这么一条数据,则插入一条新的数据,所以它也可以用来插入数据(重复的不插入),实际上相当于先删除再插入
删除:
indexWriter
.deleteDocuments(
new
Term(
"id"
,
"1"
));
indexWriter.commit();
删除id等于1的数据
插入:
indexWriter.addDocument(document);
indexWriter.commit();
插入一条数据,即使已存在也插入