`
yinghuayu1324117
  • 浏览: 67547 次
  • 性别: Icon_minigender_2
  • 来自: 保定
文章分类
社区版块
存档分类

分散配置

阅读更多

分散配置:

首先编写一个服务类

package cn.csdn.service;

public class ConnServiceImpl {

    private String driverClass;
    private String url;
    private String user;
    private String password;

    //set注入
   public void setDriverClass(String driverClass) {
       this.driverClass = driverClass;
    }
    public void setUrl(String url) {
       this.url = url;
    }
    public void setUser(String user) {
       this.user = user;
    }
    public void setPassword(String password) {
       this.password = password;
    }
}

 

 

一般属性文件的装载配置

<bean id="connServiceImpl" class="cn.csdn.service.ConnServiceImpl" scope="singleton">

    <property name="driverClass"><value>com.mysql.jdbc.Driver</value></property>

    <property name="url"><value>jdbc:mysql://localhost:3306/db</value></property>

    <property name="user"><value>root</value></property>

    <property name="password"><value>1234</value></property>

</bean>

 

 

在应用上下文中,使用PropertyPlaceholderConfigurer从外部属性文件装载配置信息:jdbc.Properties文件

 

jdbc\:driverClass=com.mysql.jdbc.Driver

jdbc\:url=jdbc\:mysql\://localhost\:3306/db

jdbc\:user=root

jdbc\:password=1234

 

1、  应用上下文中从单个外部属性文件装载配置信息

<!--引入一个外部文件-->

<bean id="propertyPlaceholderConfigurer" class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer" scope="singleton">

    <property name="location">

        <value>cn/csdn/service/jdbc.properties</value>

    </property>

</bean>

 

2、  应用上下文中多个外部属性文件装载配置信息

<!-- 引入多个外部文件 -->

<bean id="propertyPlaceholderConfigurer" class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer" scope="singleton">

    <property name="locations">

         <list>

            <value>cn/csdn/service/jdbc.properties</value>

        </list>

    </property>

</bean>

 

这样就可以用占位符变量代替Bean配置文件中硬编码配置了,占位符变量采用${variable}的形式,代码如下:

<bean id="connServiceImpl" class="cn.csdn.service.ConnServiceImpl"

       scope="singleton">

       <property name="driverClass">

          <!-- 在使用外部文件的名称是方式${名称} -->

           <value>${jdbc:driverClass}</value>

       </property>

       <property name="url">

           <value>${jdbc:url}</value>

       </property>

       <property name="user">

           <value>${jdbc:user}</value>

       </property>

       <property name="password">

           <value>${jdbc:password}</value>

       </property>

    </bean>

 

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics