为不同环境外部化tomcat jdbc连接池信息

为不同环境外部化tomcat jdbc连接池信息,tomcat,jdbc,connection-pooling,jndi,Tomcat,Jdbc,Connection Pooling,Jndi,您好 我正在寻找一个很好的解决方案,将war的context.xml中的JNDI连接池信息外部化,这样当应用程序从dev移动到QA再到prod时,war文件就不需要重新编译。理想情况下,url、驱动程序、用户名和密码将可变,然后通过为每个环境定制的属性文件进行填充。如果这是不可能的,那么对于如何在不为目标环境重新编译的情况下处理跨环境移动战争,还有其他建议吗?Maven提供概要文件这需要针对特定环境的构建 提前感谢。为什么不在Tomcat级别配置它,而不是嵌入context.xml?对我来说,这

您好

我正在寻找一个很好的解决方案,将war的context.xml中的JNDI连接池信息外部化,这样当应用程序从dev移动到QA再到prod时,war文件就不需要重新编译。理想情况下,url、驱动程序、用户名和密码将可变,然后通过为每个环境定制的属性文件进行填充。如果这是不可能的,那么对于如何在不为目标环境重新编译的情况下处理跨环境移动战争,还有其他建议吗?Maven提供概要文件这需要针对特定环境的构建


提前感谢。

为什么不在Tomcat级别配置它,而不是嵌入
context.xml
?对我来说,这特别有意义,因为Dev、QA、Prod可以使用不同的池设置。这里,我指的是池的配置/大小,而不仅仅是url、用户名和密码

您可以拥有一个context.xml,它位于公共“conf”目录中的WAR文件之外。请参阅。

在“Tomcat级别”中,您是指在GlobalNamingResources中吗?在
$CATALINA_BASE/conf/context.xml
$CATALINA_BASE/conf/[enginename]/[hostname]/[context.xml.default
中,或在中记录的
$CATALINA_BASE/conf/[engineame]/[hostname]/[code>中的单个文件中。