亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

Spring用代碼來讀取properties文件實例解析

 更新時間:2018年01月10日 11:05:49   作者:Gyoung  
這篇文章主要介紹了Spring用代碼來讀取properties文件實例解析,具有一定借鑒價值,需要的朋友可以參考下

有些時候,我們需要以Spring代碼直接讀取properties配置文件,那么我們要如何操作呢?下面我們來看看具體內(nèi)容。

我們都知道,Spring可以@Value的方式讀取properties中的值,只需要在配置文件中配置

org.springframework.beans.factory.config.PropertyPlaceholderConfigurer

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

那么在需要用到這些獲取properties中值的時候,可以這樣使用

  @Value("${sql.name}")
  private String sqlName;

但是這有一個問題,我每用一次配置文件中的值,就要聲明一個局部變量。有沒有用代碼的方式,直接讀取配置文件中的值。

答案就是重寫PropertyPlaceholderConfigurer

public class PropertyPlaceholder extends PropertyPlaceholderConfigurer {

  private static Map<String,String> propertyMap;

  @Override
  protected void processProperties(ConfigurableListableBeanFactory beanFactoryToProcess, Properties props) throws BeansException {
    super.processProperties(beanFactoryToProcess, props);
    propertyMap = new HashMap<String, String>();
    for (Object key : props.keySet()) {
      String keyStr = key.toString();
      String value = props.getProperty(keyStr);
      propertyMap.put(keyStr, value);
    }
  }

  //static method for accessing context properties
  public static Object getProperty(String name) {
    return propertyMap.get(name);
  }
}

在配置文件中,用上面的類,代替PropertyPlaceholderConfigurer

 <bean id="propertyConfigurer" class="com.gyoung.mybatis.util.PropertyPlaceholder">
    <property name="location">
      <value>classpath:config.properties</value>
    </property>
  </bean>

這樣在代碼中就可以直接用編程方式獲取

 PropertyPlaceholder.getProperty("sql.name");

如果是多個配置文件,配置locations屬性

<bean id="propertyConfigurer"
     class="com.gyoung.mybatis.util.PropertyPlaceholder">
    <property name="ignoreResourceNotFound" value="true"/>
    <property name="locations">
      <list>
        <value>file:./jdbc.properties</value>
        <value>file:./module.config.properties</value>
        <value>classpath:jdbc.properties</value>
        <value>classpath*:*.config.properties</value>
      </list>
    </property>
  </bean>

總結(jié)

以上就是本文關(guān)于Spring用代碼來讀取properties文件實例解析的全部內(nèi)容,希望對大家有所幫助。感興趣的朋友可以繼續(xù)參閱本站:

Spring實例化bean過程解析及完整代碼示例

Spring工廠方法創(chuàng)建(實例化)bean實例代碼

如有不足之處,歡迎留言指出。感謝朋友們對本站的支持!

相關(guān)文章

  • java中壓縮文件并下載的實例詳解

    java中壓縮文件并下載的實例詳解

    在本篇內(nèi)容里小編給大家整理的是一篇關(guān)于java中壓縮文件并下載的實例詳解內(nèi)容,有興趣的朋友們可以學(xué)習(xí)下。
    2021-02-02
  • Java使用正則表達式驗證手機號和電話號碼的方法

    Java使用正則表達式驗證手機號和電話號碼的方法

    今天小編就為大家分享一篇關(guān)于Java使用正則表達式驗證手機號和電話號碼的方法,小編覺得內(nèi)容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧
    2018-12-12
  • 深入理解equals和hashCode方法

    深入理解equals和hashCode方法

    在Java中,equals和hashCode方法是Object中提供的兩個方法,這兩個方法對以后的學(xué)習(xí)有很大的幫助,本文就深度來去講解這兩個方法。下面小編帶大家來一起學(xué)習(xí)吧
    2019-06-06
  • Java內(nèi)部類與匿名內(nèi)部類

    Java內(nèi)部類與匿名內(nèi)部類

    這篇文章主要介紹了Java內(nèi)部類與匿名內(nèi)部類,內(nèi)部類可以直接訪問外部類的成員,包括私有成員。外部類要訪問內(nèi)部類的成員,必須要建立內(nèi)部類的對象,更多相關(guān)內(nèi)容可以參考下面文章內(nèi)容
    2022-06-06
  • SpringBoot 集成 Memcached的方法示例

    SpringBoot 集成 Memcached的方法示例

    這篇文章主要介紹了SpringBoot 集成 Memcached的方法示例,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-05-05
  • Dapr在Java中的服務(wù)調(diào)用實戰(zhàn)過程詳解

    Dapr在Java中的服務(wù)調(diào)用實戰(zhàn)過程詳解

    這篇文章主要為大家介紹了Dapr在Java中的服務(wù)調(diào)用實戰(zhàn)過程詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-06-06
  • Java中equals與==的用法和區(qū)別

    Java中equals與==的用法和區(qū)別

    這篇文章主要給大家介紹了關(guān)于Java中equals與==的用法和區(qū)別的相關(guān)資料,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2018-11-11
  • java使用正則表達式判斷手機號的方法示例

    java使用正則表達式判斷手機號的方法示例

    這篇文章主要介紹了java使用正則表達式判斷手機號的方法,分析了手機號碼段的原理及java使用正則表達式針對手機號的匹配操作實現(xiàn)技巧,需要的朋友可以參考下
    2017-06-06
  • Spring?Bean是如何初始化的詳解

    Spring?Bean是如何初始化的詳解

    Spring只Bean加載機制默認(rèn)情況下是初始化容器的時候就會直接初始化,但是也取決于是否使用了懶加載,下面這篇文章主要給大家介紹了關(guān)于Spring?Bean是如何初始化的相關(guān)資料,需要的朋友可以參考下
    2022-03-03
  • Java Quartz觸發(fā)器CronTriggerBean配置用法詳解

    Java Quartz觸發(fā)器CronTriggerBean配置用法詳解

    這篇文章主要介紹了Java Quartz觸發(fā)器CronTriggerBean配置用法詳解,本篇文章通過簡要的案例,講解了該項技術(shù)的了解與使用,以下就是詳細內(nèi)容,需要的朋友可以參考下
    2021-08-08

最新評論