spring.profiles.active配置多种spring启动环境

本文介绍如何在Spring MVC环境中配置不同环境(如开发、测试和生产)的数据库连接参数。通过在web.xml中设置spring.profiles.active属性来指定当前环境,并在Spring配置文件中根据不同环境加载相应的数据库连接设置。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

            我们在开发的时候,经常会需要多种环境,比如开发环境,测试环境,生产环境的数据库地址是不一样的。spring mvc环境下如何配置呢?

            在web.xml里面有个属性,可以配置。

            比如我们配置测试环境。

            

	<context-param>  
	    <param-name>spring.profiles.active</param-name>  
	    <param-value>test</param-value>  
	</context-param>  
             在spring xml配置文件这么配置

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
	xmlns:jee="http://www.springframework.org/schema/jee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	xmlns:jpa="http://www.springframework.org/schema/data/jpa" xmlns:tx="http://www.springframework.org/schema/tx"
	xsi:schemaLocation="http://www.springframework.org/schema/beans 
						http://www.springframework.org/schema/beans/spring-beans-3.1.xsd
						http://www.springframework.org/schema/data/jpa
						http://www.springframework.org/schema/data/jpa/spring-jpa-1.1.xsd
						http://www.springframework.org/schema/tx
      					http://www.springframework.org/schema/tx/spring-tx-3.1.xsd
      					http://www.springframework.org/schema/jee
      					http://www.springframework.org/schema/jee/spring-jee-3.1.xsd">



	<bean id="propertyConfigurer"
		class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
		<property name="location" value="classpath:database.properties" />
	</bean>

	
       <beans profile="prod">
		<jee:jndi-lookup id="dataSource" jndi-name="${jpreTest.datasource}"
			resource-ref="true" />
		<jee:jndi-lookup id="dataSource2" jndi-name="${jpreTest.datasource2}"
			resource-ref="true" />
	</beans>

	<beans profile="test">

	    <bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource">
			<property name="driverClass" value="${jpreTest.connection.driver_class}" />
			<property name="jdbcUrl" value="${jpreTest.connection.url}" />
			<property name="user" value="${jpreTest.connection.username}" />
			<property name="password" value="${jpreTest.connection.password}" />
			<!-- 初始线程数 -->
            <property name="initialPoolSize" value="5" />
            <!-- 最小线程数 -->
            <property name="minPoolSize" value="${jpreTest.minPoolSize}" />
            <!-- 最大线程数 -->
            <property name="maxPoolSize" value="${jpreTest.maxPoolSize}" />
            <!-- 空闲时间,单位秒 -->
            <property name="maxIdleTime" value="1200" />
            <!-- 获取连接失败后该数据源将申明已断开并永久关闭 -->
            <property name="breakAfterAcquireFailure" value="true" />
            <!--每60秒检查所有连接池中的空闲连接。Default: 0 -->  
            <property name="idleConnectionTestPeriod" value="60"/>  
            <!--如果设为true那么在取得连接的同时将校验连接的有效性。Default: false -->  
            <property name="testConnectionOnCheckin" value="true" />
            <!-- 链接池耗尽时一次获取的连接数 -->
            <property name="acquireIncrement" value="5" />
		</bean>

	    <bean id="dataSource2" class="com.mchange.v2.c3p0.ComboPooledDataSource">
			<property name="driverClass" value="${jpreTest.connection.driver_class}" />
			<property name="jdbcUrl" value="${jpreTest.connection.url2}" />
			<property name="user" value="${jpreTest.connection.username2}" />
			<property name="password" value="${jpreTest.connection.password2}" />
			<!-- 初始线程数 -->
            <property name="initialPoolSize" value="5" />
            <!-- 最小线程数 -->
            <property name="minPoolSize" value="${jpreTest.minPoolSize}" />
            <!-- 最大线程数 -->
            <property name="maxPoolSize" value="${jpreTest.maxPoolSize}" />
            <!-- 空闲时间,单位秒 -->
            <property name="maxIdleTime" value="1200" />
            <!-- 获取连接失败后该数据源将申明已断开并永久关闭 -->
            <property name="breakAfterAcquireFailure" value="true" />
            <!--每60秒检查所有连接池中的空闲连接。Default: 0 -->  
            <property name="idleConnectionTestPeriod" value="60"/>  
            <!--如果设为true那么在取得连接的同时将校验连接的有效性。Default: false -->  
            <property name="testConnectionOnCheckin" value="true" />
            <!-- 链接池耗尽时一次获取的连接数 -->
            <property name="acquireIncrement" value="5" />
		</bean>
	</beans>
</beans>

 
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值