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

  • 相关阅读:
    Jmeter 设置中文
    不同JDK版本直接的intern()方法的区别---JDK6 VS JDK6+
    java内存模型中堆和栈的区别
    JVM三大性能调优参数 -Xms -Xmx -Xss的含义
    Class<?>中isAssignableFrom()方法与instanceof关键字
    Lua中ipairs 和 pairs的区别
    Redis主从同步中的repl_backlog_buffer和repl_buffer
    Redis-开启使用AOF日志
    将windows 文件复制到linux上去
    winform集成第三方应用引起灾难性崩溃处理
  • 原文地址:https://www.cnblogs.com/jason0529/p/3413520.html
Copyright © 2011-2022 走看看