Hibernate Search 5中的访问目录

时间:2015-01-29 03:25:17

标签: hibernate hibernate-search

由于HSearch中有限的分面选项,我仍然与Bobo合作。 因此,我需要为Bobo提供一个DirectoryReader,以便它可以工作。

现在我正在尝试升级到Hibernate Search 5,而我以前的方式已经不再适用了。

MutableSearchFactory factory = (MutableSearchFactory) fts.getSearchFactory();
DirectoryBasedIndexManager mgr = (DirectoryBasedIndexManager) factory.getAllIndexesManager().getIndexManager(clazz.getCanonicalName());

return DirectoryReader.open(mgr.getDirectoryProvider().getDirectory());

有关如何访问此内容的任何建议吗?

2 个答案:

答案 0 :(得分:1)

不确定打开MutableSearchFactory是否是个好主意。这堂课真的是内部的。您最好打开SearchIntegrator这是一个API:

SearchIntegrator searchIntegrator = getSearchFactory().unwrap(SearchIntegrator.class );    
DirectoryBasedIndexManager indexManager = (DirectoryBasedIndexManager) searchIntegrator.getIndexManager(indexName)

答案 1 :(得分:0)

现在看来这就是诀窍

MutableSearchFactory factory = (MutableSearchFactory) fts.getSearchFactory().unwrap(MutableSearchFactory.class);

DirectoryBasedIndexManager mgr = (DirectoryBasedIndexManager) factory.getAllIndexesManager().getIndexManager(clazz.getCanonicalName());