spring mvc xml 配置数据源通过${}

有时候我们不想在打包的时候把数据源连接属性等参数也打包进去。

以我们公司为例,一个项目会部署不同的地市,不同的地市使用不同的数据库口令,连接

所以我把数据源部分抽离处理放在tomcat的weapps目录下面,是要修改时候直接改了重启即可,不需要重新编码代码或者修改源码,一下方式供大家参考。

在applicationContext.xml加载以下配置:

<context:property-placeholder location="file:../webapps/application.properties" />

applicationContext.xml数据源部分:

  <bean id="gp_ssmp_DataSource" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close">

        <!--<property name="auth" value="${ssmp_gp.auth}"/>-->
        <!--<property name="type" value="${ssmp_gp.type}"/>-->
        <property name="driverClassName" value="${ssmp_gp.driverClassName}"/>
        <property name="url" value="${ssmp_gp.url}"/>
        <property name="username" value="${ssmp_gp.username}"/>
        <property name="password" value="${ssmp_gp.password}"/>
        <property name="initialSize" value="${ssmp_gp.initialSize}"/>
        <property name="maxActive" value="${ssmp_gp.maxActive}"/>
        <property name="maxIdle" value="${ssmp_gp.maxIdle}"/>
        <property name="maxWait" value="${ssmp_gp.maxWait}"/>
        <property name="validationQuery" value="${ssmp_gp.validationQuery}"/>
    </bean>

application.properties内容如下:


####################################################
###ssmp_gp_stb.datasource###
ssmp_gp_stb.auth=Container
ssmp_gp_stb.type=javax.sql.DataSource
ssmp_gp_stb.driverClassName=org.postgresql.Driver
ssmp_gp_stb.url=jdbc:postgresql://192.168.8.52:5432/gp_gz
ssmp_gp_stb.username=gzgp
ssmp_gp_stb.password=123456
ssmp_gp_stb.initialSize=5
ssmp_gp_stb.maxActive=10
ssmp_gp_stb.maxIdle=10
ssmp_gp_stb.maxWait=-1
ssmp_gp_stb.validationQuery=select 1



bean里面使用不同的BasicDataSource所需要的参数也不一样这一点需要注意,

猜你喜欢

转载自blog.csdn.net/ming_key/article/details/66968309