项目开发中或多或少的都会用有一些变量的配置文件(properties),虽然我也极力的把一些配置内容都放到数据库中,然而总还是会有一些配置不能放到数据库去或者放到数据库中处理起来较麻烦等等。
总之项目里面要放置一些配置,项目刚开始的时候加了一个app-config.properties文件,里面放置了本机的IP,redis地址(session共享用)等,因为是3个人开发,其中1个还是在异地,他在自己的服务器上部署了同样的环境。问题是配置文件里面的一些变量,每次代码更新的时候另外的人可能做了修改,我要开发的时候就要改回去,由于项目比较急,功能也多,开始的时候也没时间考虑这些事情。所以后期完成的差不多的时候,又回头解决这个问题。为了让我们3个人都不修改配置文件,那么我考虑的事情是要么做环境变量要么把配置文件外移,这样的话配置就与个人的系统有关系了,而且只要配置一次以后就可以不用修改了。刚开始打算使用系统变量但是无法取到,后来发现是要在jvm里设置参数,这个有点不太好。考虑把配置问价放到外面吧:
<bean id="propertyConfigurer"
class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
<property name="locations">
<list>
<value>file:${catalina.home}/conf/app-config.properties</value>
</list>
</property>
<property name="fileEncoding" value="utf-8"/>
</bean>
我把app-config.properties 放置到了tomcat/conf 目录下,这样让其他开发者在自己电脑的tomcat下放置一份,服务器上放置了一份。之后就再也没有动过了。
网友评论