zoukankan      html  css  js  c++  java
  • Java Bean 获取properties文件的读取

    实际的开发过程中,将一些配置属性从java代码中提取到properties文件中是个很好的选择,降低了代码的耦合度。下面介绍两种通过spring读取properties文件的方法,以ip地址配置为例。ip.properties文件:

    host=127.0.01
    port=8080
     1、 使用org.springframework.beans.factory.config.PropertyPlaceholderConfigurer 类解析,在applicationContenxt.xml添加配置:
               <value>classpath*:/ip.properties</value>  
         这样可以在其他bean定义中使用:<property name="host" value="${host}" />
         另外一种通过bean的@value注解实现:
       1:  import org.springframework.beans.factory.annotation.Value;
       2:  import org.springframework.stereotype.Component;
       3:   
       4:  @Component
       5:  public class Sample{
       6:   
       7:      @Value("${host}")
       8:      private String host;
       9:      @Value("${port}")
      10:      private String port;
      11:  }
    然后注入Sample 对象即可:
    @Autowired
    private Sample sample;

    2、使用org.springframework.core.io.support.PropertiesLoaderUtils 类来加载properties文件

       1:  import org.springframework.core.io.ClassPathResource;
       2:  import org.springframework.core.io.Resource;
       3:  import org.springframework.core.io.support.PropertiesLoaderUtils;
       4:   
       5:  Resource resource = new ClassPathResource("/ip.properties");
       6:          Properties props = PropertiesLoaderUtils.loadProperties(resource);
       7:          Set<Object> keys = props.keySet();
       8:          for(Object key : keys){
       9:              System.out.println(key+" : "+props.get(key));
      10:          }
     
    两种方法输出结果:

    port : 8080
    host : 127.0.01

  • 相关阅读:
    Frame内容页向Frame页传值的问题。
    Silverlight 要求使用更新版本
    Siverlight 中RichTextBox 中注入控件无法使用的问题
    PHP_判断是否为数字
    CentOS中vsftp安装与配置
    全面认识F5负载均衡
    如何让php自动进行二级域名泛解析
    【Thinkphp教程】 如何实现URL伪静态
    LVS+heartbeat+ldirectord高可用负载均衡集群解决方案
    ThinkPHP小结
  • 原文地址:https://www.cnblogs.com/jason0529/p/3413520.html
Copyright © 2011-2022 走看看