您可以根据自己的环境使用多种东西。以下是可以考虑的事情
- 使用数据源 服务器上下文中定义的数据源消除了管理数据库配置和连接池的硬性依赖关系。在 Tomcat 中,可以按如下方式完成
context.xml
<Context>
...
<Resource name="jdbc/EmployeeDB" auth="Container"
type="javax.sql.DataSource"
description="Employees Database for HR Applications"/>
</Context>
- 使用上下文
您可以通过在此元素中嵌套条目来配置将作为环境条目资源对 Web 应用程序可见的命名值。例如,您可以像这样创建一个环境条目:(Source here)。这可以设置为上下文参数或环境条目。它们等同于在 web.xml 或属性文件中创建的条目,不同之处在于它们可从服务器的上下文中获得。
- 使用数据库配置并在 ServletContextListener 加载这些配置
我倾向于遵循的另一种方法是在数据库中创建属性的关系模式。不是在服务器启动期间加载属性文件,而是在启动期间从数据库加载属性。
public class ContextInitialize implements ServletContextListener {
private static Properties props;
public void contextInitialized(ServletContextEvent servletContextEvent) {
// connect to DB
// Load all the key values pairs as required
//put this into a Properties object, or create a hashtable, hashmap ..
}
//Getter
public String getProperty(String key){
// get value of key
}
//Setter
public void setProperty(String key, String value){
// set value to a key
}
}
注意:以上只是一个例子。
- 使用环境变量或类路径变量
在环境变量中使用类路径/路径变量,并System.getenv()
在您的 java 代码中根据需要获取这些值。