java web application中将配置文件和war文件分离
方法一
http://blog.sina.com.cn/s/blog_6b19f21d01015594.html
将webapp的配置文件存放于生成的.war文件中会造成部署中的很多不便,
尤其是在升级的时候。下面提供一种简单的方法将配置文件从.war中分离出去。1. 在WEB-INF/web.xml中定义一个context-param元素,指向配置文件的本地路径,
例如:
将webapp的配置文件存放于生成的.war文件中会造成部署中的很多不便,
尤其是在升级的时候。下面提供一种简单的方法将配置文件从.war中分离出去。1. 在WEB-INF/web.xml中定义一个context-param元素,指向配置文件的本地路径,
例如:
2. 在spring中配置property configurer
OK,完成,很简单。
如果部署人员需要自定义配置目录,则可以修改webapp的Context Descriptor。以tomcat为例:
在如下目录${CATALINA_HOME}/conf/Catalina/localhost/下建立[webapp_name].xml,这里是
registryService.xml,内容如下:
方法二
- 定义环境变量: -DRH_HOME=”/mnt/D/ronghui_config/”, 并定义jdbc.properties
- 在xml里面导入
12345678910111213141516171819202122<bean id="propertyConfigurer" class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer"><!--<property name="location"><value>classpath:ecis.properties</value></property>--><property name="locations"><list><!-- <value>classpath:config/ecis.properties</value> --><value>file:${RH_HOME}/config/cpm/jdbc.properties</value></list></property><property name="systemPropertiesMode"><value>1</value></property><property name="searchSystemEnvironment"><value>true</value></property><property name="ignoreUnresolvablePlaceholders"><value>true</value></property></bean>
3. 使用
|
1 2 3 4 5 6 7 8 9 10 |
<bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close"> <property name="driverClassName" value="${database.driver}"/> <property name="url" value="${database.url}"/> <property name="username" value="${database.user}"/> <property name="password" value="${database.password}"/> <property name="maxActive" value="100"/> <property name="validationQuery" value="select 1 as aa from TB_SM_DUAL"/> <property name="testWhileIdle" value="true"/> <property name="testOnBorrow" value="true"/> </bean> |
