2010-11-25 90 views
1

我有一個問題仍然與我在內存中的對象有關。我初始化模型如下:用lucene重新索引對象

model.init("" + 
     "<root>" + 
     " <objA nb='5' attrA1='string(val1)' attrA2='int(0)'>" + 
     " <objB nb='8' attrB1='string(val2)' attrB2='int(102)' />" + 
     " <objQ nb='4' attrD3='int(250)' attrD6='string(ok)' />" + 
     " </objA>" + 
     " <objC nb='1' attrC1='int(1)'/>" + 
     " <objD nb='1' attrD1='string(valx)'/>" + 
     "  <objZ nb='8' attrB1='string(val2)' attrB2='int(102)' />" + 
     " <objR nb='4' attrR1='string(val3)' />" + 
     " <mark nb='2' attrR9='string(valeur)'>" + 
     " <ttt name='string(qsa)'>" + 
     "  <aaa></aaa>" + 
     " </ttt>" + 
     " </mark>" + 
     "</root>"); 
    rootType = model.getRootType(); 

然後我索引所有元素及其屬性;之後,我修改了其中的一些(我改變了它們的屬性值,刪除了一些對象,我創建了一些新聞)。如何檢測到我修改了對象並使用lucene重新索引它?我會非常感激的幫助。

回答

1

如何檢測,我修改這通常是通過具有被所有制定者無論何時建立索引設置爲true並設置爲false了「修改」的標記完成的對象

並用lucene重新索引它?

IIRC,Lucene不能修改索引文件,所以你必須刪除並重新添加它們。