2011-03-28 66 views
1

我在我的web應用程序中使用Hibernate搜索全文搜索。我有管理面板中的索引創建按鈕。我做這個代碼:如何刪除舊的Hibernate搜索索引

   fullTextSession.createIndexer() 
       .purgeAllOnStart(true) 
       .optimizeAfterPurge(true) 
       .optimizeOnFinish(true) 
       .batchSizeToLoadObjects(25) 
       .threadsToLoadObjects(5) 
       .threadsForSubsequentFetching(20) 
       .startAndWait(); 

如果指數爲建立正確,然後我再還是按下此按鈕舊索引文件在磁盤上和程序創建新的索引。等等。你能幫助我在創建新的之前刪除舊的索引文件嗎?

回答

2

我做了類似的事情,但只有當我關閉我的應用程序時,我刪除索引,然後在啓動時再次設置它們。

您是否嘗試過調用purgeAll()而不是purgeAllOnStart()?這就是我所說的應用程序關閉,它的工作原理。爲了安全起見,在清除索引後,我實際上刪除了我的索引目錄以及它從磁盤中包含的所有文件/文件夾。

+1

我在HIbernate Search論壇上找到了一個[answer](https://forum.hibernate.org/viewtopic.php?f=9&t=1010245) – AmarthG 2011-08-27 05:37:45