java - 从 $TOMCAT_HOME\lib 读取属性文件

标签 java hibernate tomcat7

我们有一个使用 Tomcat 服务器的小型 Web 应用程序。所有数据库详细信息都在属性文件中作为 hibernate.cfg.xml 的键值对。阅读。

为了使服务器团队可以轻松管理它,属性文件需要转到 $TOMCAT_HOME/lib文件夹。 Hibernate 配置文件位于:APP_HOME\src\main\resources\hibernate.cfg.xml
并且它可以被应用程序类访问。
hibernate配置文件似乎没有读取$TOMCAT_HOME/lib/myapp.properties .
我的首要要求是属性文件应位于 $TOMCAT_HOME/lib 中。
谁能建议我正确的做法。

提前致谢..!

最佳答案

您可以尝试以下方法来获取属性文件的路径:

String propertyFilePathStr= System.getProperty("catalina.base") +
                  File.separator + "lib"+ File.separator + "myapp.properties";

然后通过以下方式配置 Hibernate 使用此配置文件:

Configuration config = new Configuration().configure(propertyFilePathStr);

但是,这并不是说它仅适用于 Tomcat,如果您使用不同的服务器(例如 Glassfish 等),则需要更改。

关于java - 从 $TOMCAT_HOME\lib 读取属性文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37490526/

相关文章:

java - 如何让 log4j syslog appender 在一行中写入堆栈跟踪?

java - Spring 中的 Autowiring 与实例化

java - jooq 中的列函数用于分割字符串

java - 我可以克服 Jax-RS 中的冲突基础 @Path 吗?

java - 尝试将数字的数字放入数组中,但结果相反

java - JPA/hibernate ORA-00932 : inconsistent datatypes: expected NUMBER got BINARY

java - Hibernate OneToMany 关系错误

java - 命名异常 : Cannot create resource instance for jta. 用户事务

java - 异步请求不适用于 Tomcat 7/Terracotta 3.6

jakarta-ee - java.lang.ClassNotFoundException : javax. servlet.jsp.el.ImplicitObjectELResolver$ImplicitObjects