2012-03-07 7 views

답변

8

이것은 정확히 IndexWrite#updateDocument 메소드의 목적입니다. 첫 번째 인수는 색인에서 고유해야하는 용어입니다. 예를 들어

,

String id = "42"; 
Document doc = new Document(); 
Field field = new Field("id", id, Store.YES, Index.NOT_ANALYZED); 
doc.add(field); 

indexWriter.updateDocument(new Term("id", id), doc); 

doc을 보장하여 인덱스의 ID (42)와 유일한 문서입니다.

+0

ID가없는 경우 삽입합니까? – Shisoft

+1

예. 설명서에는 "용어가 포함 된 문서를 먼저 삭제 한 다음 새 문서를 추가하여 문서를 업데이트합니다."라는 내용이 나와 있습니다. 이전에 동일한 ID로 문서가 색인 된 특별한 경우에는 문서가 삭제되지 않습니다. – jpountz

관련 문제