2010-11-25 66 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不能修改索引文件,所以你必须删除并重新添加它们。