在开发的过程中,不可避免会接触到至少三个环境的程序部署:开发、测试和生产环境。
  每个环境都使用一套数据库配置,路径配置等,如果每次都人工的干预每一个配置文件,工作会比较繁杂,且容易遗漏并且出错。
  spring3.1之后提供了profile功能,可以切换不同的自定义profile环境,的缺点是和maven结合不大好,只能在web.xml中进行修改。
  方法如下:
  1、在beans.xml中定义各个环境。

 

<beans profile="develop">
</beans>
<beans profile="test">
</beans>
<beans profile="product">
</beans>

  每个环境如果使用了不同的配置文件(properties文件等)可以在环境中进行加载声明。
  该段代码需在文件根节点的后一段
  如
  <beans profile="test">
  <context:property-placeholder location="classpath*:jdbc-test.properties"/>
  </beans>
  2、定义属性之外的配置,如指定数据库bean等

 

<beans profile="test,develop">
<bean id="authDataSource"
class="org.springframework.jdbc.datasource.DriverManagerDataSource">
<property name="driverClassName" value="oracle.jdbc.driver.OracleDriver">
</property>
<property name="url"
value="jdbc:oracle:thin:@208.120.102.10:1522:ora11g">
</property>
<property name="username" value="user"></property>
<property name="password" value="passwd"></property>
</bean>
</beans>
<beans profile="product">
<bean id="authDataSource"
class="org.springframework.jdbc.datasource.DriverManagerDataSource">
<property name="driverClassName" value="oracle.jdbc.driver.OracleDriver">
</property>
<property name="url"
value="jdbc:oracle:thin:@198.121.33.7:1521:ora10g">
</property>
<property name="username" value="user"></property>
<property name="password" value="passwd"></property>
</bean>
</beans>