【发布时间】:2015-09-24 17:06:48
【问题描述】:
我制作 Spring webapp,并使用 DB 中的 jdbc.properties 文件。 在 applicationContext.xml 我有这个
<context:property-placeholder location="classpath:cfg/properties/jdbc.properties"/>
<bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close"
p:driverClassName="${jdbc.driverClassName}" p:url="${jdbc.databaseurl}" p:username="${jdbc.username}"
p:password="${jdbc.password}" />
现在,我想从我的 DB 中的属性更改位置,现在我在 tomcat 中有 context.xml 文件,在 webapp 的 META-INF 中有 context.xml 文件。 在 context.xml 我有:
<?xml version='1.0' encoding='utf-8'?>
<Context path="/webapp" docBase="../webapp/webapp.war" displayName="webapp">
<Environment name="jdbc.driverClassName" override="false" type="java.lang.String" value="org.postgresql.Driver"/>
<Environment name="jdbc.dialect" override="false" type="java.lang.String" value="..."/>
<Environment name="jdbc.databaseurl" override="false" type="java.lang.String" value="..."/>
<Environment name="jdbc.username" override="false" type="java.lang.String" value=""/>
<Environment name="jdbc.password" override="false" type="java.lang.String" value=""/>
</Context>
我需要将 applicationContext 更改为从 context.xml 查找属性的 webapp,或者更好地如何从 tomcat context.xml 文件中放入 jdbc.properties 值?
【问题讨论】:
-
为什么还需要 context.xml 中的属性?
-
因为,如果我改变一些关于 DB 的东西,我不想改变 WAR 文件。我只更改了 tomcat 中的 context.xml。
标签: java xml spring tomcat jdbc