zoukankan      html  css  js  c++  java
  • Spring3自定义环境配置 <beans profile="">

    摘自springside3 
    Spring 3.1的功能,以后就不用为了区分Test, Dev, Production环境,搞几个只有细微区别的application.xml, application-test.xml及引用它们的web.xml了。

    首先,将applicationContext.xml中的namespace从3.0升级到3.1.xsd, 然后就可以在文件末尾加入不同环境的定义,比如不同的dataSource
    Xml代码  收藏代码
    1. <beans profile="test">  
    2. <jdbc:embedded-database id="dataSource">  
    3. <jdbc:script location="classpath:com/bank/config/sql/schema.sql"/>  
    4. </jdbc:embedded-database>  
    5. </beans>  
    6.   
    7. <beans profile="production">  
    8. <jee:jndi-lookup id="dataSource" jndi-name="java:comp/env/jdbc/datasource"/>  
    9. </beans>  
     
    2.在web.xml里,你需要定义使用的profile,最聪明的做法是定义成context-param,注意这里定义的是default值,在非生产环境,可以用系统变量"spring.profiles.active"进行覆盖。

    Xml代码  收藏代码
    1. <context-param>  
    2. <param-name>spring.profiles.default</param-name>  
    3. <param-value>production</param-value>  
    4. </context-param>  
     
    3.在其他地方进行覆盖

    3.1 在development和functional test启动Jetty前设置系统变量

    Java代码  收藏代码
    1. System.setProperty("spring.profiles.active""development");  
    2. server.start()  
     
    3.2 在用到ApplicationContext的单元测试用例中,用 @ActiveProfiles定义

    Java代码  收藏代码
    1. @ContextConfiguration(locations = { "/applicationContext.xml" })  
    2. @ActiveProfiles("test")  
    3. public class AccountDaoTest extends SpringTxTestCase {  
    4. }  
     
    在springside里有演示了production,development,test,functional三个环境, 大家可以根据实际情况组合自己的环境管理。另外可以与Spring的properties文件加载时可顺位覆盖的特性(放一些不在版本管理中的xx.local.properties文件),更好的支持本地开发环境,Jenkins上的functional test等其他环境。

    详情:https://github.com/springside/springside4/wiki/Spring

    详细配置与使用:http://www.cnblogs.com/chanedi/archive/2012/01/12/2320837.html

  • 相关阅读:
    搜索框
    鼠标hover时改变图片透明度和颜色(方法二)
    让背景带上颜色
    右侧固定导航栏
    react native环境配置
    左侧固定导航栏
    鼠标hover时改变图片透明度和颜色
    androidSDK配置环境变量
    cordova插件开发
    Python电子书分享
  • 原文地址:https://www.cnblogs.com/yqskj/p/3052239.html
Copyright © 2011-2022 走看看