指定Hibernate-Search运行时目录

时间:2014-12-10 04:37:05

标签: java hibernate java-ee jndi hibernate-search

我是Hibernate-Search的新手。在入门指南中,它说我可以使用这两个属性指定存储索引的位置。

<property name="hibernate.search.default.directory_provider"
          value="filesystem"/>

<property name="hibernate.search.default.indexBase"
          value="/var/lucene/indexes"/>

问题是,这是一条静态路径,在开发和生产中可能不一样。如何在运行时更改路径?通过JNDI,或者某种方式在运行时修改persistence.xml。

提前致谢。

1 个答案:

答案 0 :(得分:0)

一种解决方案是使用构建时过滤。您可以将正确的值(取决于目标环境)过滤到 persistence.xml 中。我之前使用过这种方法,效果很好。

另一种方法是使用相对路径。然后,相对于jvm启动的目录创建目录。

最后但并非最不重要的是,如果您使用Spring,您也可以查看此post