zoukankan      html  css  js  c++  java
  • spring读取properties和其他配置文件的几种方式

    1、因为spring容器的一些机制,在读取配置文件进行数据库的配置等等是很有必要的,所以我们要考虑配置文件的的读取方式以及各个方式的实用性

    2、配置文件的读取方式我这里介绍2种,目的是掌握这2种就可以很好的应用了

    3、这里我的properies配置文件如下:

    driver=com.mysql.jdbc.Driver
    url=jdbc:mysql://localhost:3306/m_model?useUnicode=true&characterEncoding=utf8
    username=root
    password=root

    4、第一种读取方式:一种采用bean的配置方式,一种是标签的形式

      1)bean的配置方式(推荐使用这种方式)

      <bean id="propertyPlaceholderConfigurer" class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
            <!-- 如果是单个文件可以按照注释的方式来配置 -->
            <!-- <property name="location" value="classpath:conf/spring-config.properties"/> -->
            <property name="locations">
                <array>
                    <value>classpath:conf/spring-config.properties</value>
                </array>
            </property>
        </bean>
        
        <bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource">
            <property name="driverClassName" value="${driver}"/>
            <property name="url" value="${url}"/>
            <property name="username" value="${username}"/>
            <property name="password" value="${password}"/>
        </bean>

      2)标签的配置方式

       <context:property-placeholder location="classpath:conf/spring-config.properties"/>
        
        <bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource">
            <property name="driverClassName" value="${driver}"/>
            <property name="url" value="${url}"/>
            <property name="username" value="${username}"/>
            <property name="password" value="${password}"/>
        </bean>

    问题:这里我遇到了读取配置处错的问题:

    会出现乱码的情况,然后我找了一些处理方式
      (1)修改properties针对字符的配置

    url=jdbc:mysql://localhost:3306/m_model?useUnicode=true&amp;characterEncoding=utf8

      (2)加入读取配置时进行文件编码

    <context:property-placeholder location="classpath:conf/spring-config.properties" file-encoding="UTF-8"/>  

    这两种方式我都试过了,目前还不知道什么原因导致的乱码问题。有大神可以指教一下
    指教!指教!指教!指教!指教!指教!指教!指教!指教!指教!指教!指教!指教!指教!指教!指教!指教!指教!指教!指教!指教!指教!指教!指教!

    5、是用util:properties便签来实现的,这种方式就是单纯的来读取配置文件

    <util:properties id="config" location="classpath:conf/spring-config.properties"/>
        <bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource">
            <property name="driverClassName" value="#{config.driver}"/>
            <property name="url" value="#{config.url}"/>
            <property name="username" value="#{config.username}"/>
            <property name="password" value="#{config.password}"/>
        </bean>
        

     注意:这里是采用#{id.属性}来实现具体的读取,上面是直接$(属性来实现的)

    6、这两种方式是针对于xml配置xml赋值的方式来实现,在使用过程中也可以使用通过标签的方式给具体的java代码赋值,便于管理

    @Value("#{config.username}")
    private String userName;

    这种方式也可以用来装配具体的属性,便于合理管理相关配置

  • 相关阅读:
    Virtual Studio 2010在Release模式下进行调试的设置方法
    OpenGL Shader
    OGRE的安装编译
    开源GIS平台空间数据管理与发布技术研究
    风靡世界的小游戏2048源代码
    成为优秀程序员的几个阶段
    颜色空间模型(HSVLABRGBCMYK)
    希望自己的博客被知名搜索引擎收录的网址
    我的第一篇博客
    当你的善良受到委屈时
  • 原文地址:https://www.cnblogs.com/ll409546297/p/6897719.html
Copyright © 2011-2022 走看看