需要将同一应用程序部署到多个上下文,每个上下文具有不同的数据库Tomcat7

时间:2019-04-23 11:04:38

标签: java deployment tomcat7 datasource jndi

如何将同一应用程序部署到多个上下文,每个上下文具有不同的数据库。 使用Tomcat7.0.54。我们有3个不同的环境,例如开发,质量,生产。这3种环境都具有3种不同的数据库配置。

通常是apache-tomcat-7.0.54 \ conf \ context.xml文件。示例D配置。

<!-- Default set of monitored resources -->
<WatchedResource>WEB-INF/web.xml</WatchedResource>

<!-- Uncomment this to disable session persistence across Tomcat restarts -->
<!--
<Manager pathname="" />
-->

<!-- Uncomment this to enable Comet connection tacking (provides events
     on session expiration as well as webapp lifecycle) -->
<!--
<Valve className="org.apache.catalina.valves.CometConnectionManagerValve" />
-->
<Resource name="java:jboss/datasources/letterDatasource"
        auth="Container"
        type="javax.sql.DataSource"
        username="admin"
        password="admin"
        driverClassName="oracle.jdbc.OracleDriver"
        url="xxx xxxx xxxxx xx"
        maxActive="8"
        maxIdle="4"/>           

如何以编程方式或有效地执行上述操作,而不是在每个服务器的context.xml文件中进行更改? 我没有用弹簧。只是使用带有jsf和richfaces的seam 2.3的普通Web应用程序。

谢谢。

1 个答案:

答案 0 :(得分:0)

将数据库属性保留在environment.property文件中,该文件对于每个阶段都会有所不同。指定的环境将具有其特定的环境属性。