Spring下读取properties文件

  由于在spring的xml文件中配置了

  <bean id="validator" class="org.springframework.validation.beanvalidation.LocalValidatorFactoryBean">
  <property name="providerClass" value="org.hibernate.validator.HibernateValidator"/>
  <!--不设置则 默认为classpath下的 ValidationMessages.properties -->
  <property name="validationMessageSource" ref="validatemessageSource"/>
  </bean>

  在这种情况下通过正常的程序去读取Properties文件,会出现读取失败的结果。

  例如: 

        Properties prop = new Properties();   
        InputStream in = Object.class.getResourceAsStream("/validatemessage.properties");   
   try {   
       prop.load(in);  
              param2 = prop.getProperty("initYears2").trim();   
        } catch (IOException e) {   
            //TODO 
        }  

  所以需要使用Spring提供的org.springframework.core.io.support.PropertiesLoaderUtil类来加载properties文件

  例如: 

    Resource resource = new ClassPathResource("/validatemessages.properties");
    Properties properties = new Properties();     try {
    properties = PropertiesLoaderUtils.loadProperties(resource);
    } catch (IOException e) {
    //TODO
    }

   这样就能成功的读取到properties文件,得到需要的值

原文地址:https://www.cnblogs.com/MonkeyKingK/p/4455799.html