我是Hibernate-Search的新手。在入门指南中,它说我可以使用这两个属性指定存储索引的位置。
<property name="hibernate.search.default.directory_provider"
value="filesystem"/>
<property name="hibernate.search.default.indexBase"
value="/var/lucene/indexes"/>
问题是,这是一个静态路径,在开发和生产中可能并不相同。如何在运行时更改路径?也许通过JNDI,或者某种方式在运行时修改持久性.xml。
提前谢谢。
一种解决方案是使用构建时筛选。您可以将正确的值(取决于目标环境)筛选为持久性.xml。我以前使用过这种方法,效果很好。
另一种方法是使用相对路径。然后相对于 jvm 启动的目录创建该目录。
最后但并非最不重要的一点是,如果您使用的是Spring,您也可以查看这篇文章。