实际的开发过程中,将一些配置属性从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

Java Bean 获取properties文件的读取的更多相关文章

  1. 关于properties文件的读取(Java/spring/springmvc/springboot)

    一.Java读取properties文件 1.基于ClassLoder读取配置文件 注意:该方式只能读取类路径下的配置文件,有局限但是如果配置文件在类路径下比较方便. Properties prope ...

  2. 【Properties】获取Properties文件

    获取Properties文件 package com.chinamobile.epic.tako.v2.query.commons; import org.springframework.core.i ...

  3. java加载properties文件的六中基本方式实现

    java加载properties文件的方式主要分为两大类:一种是通过import java.util.Properties类中的load(InputStream in)方法加载: 另一种是通过impo ...

  4. Java实现获取属性文件的参数值

    Java实现获取属性文件的参数值 1,属性文件内容(analysis.properties),路径必须在:src根目录下: #client data path analysis.client.data ...

  5. java加载properties文件的六种方法总结

    java加载properties文件的六种方法总结 java加载properties文件的六中基本方式实现 java加载properties文件的方式主要分为两大类:一种是通过import java. ...

  6. 获取properties文件的内容

    获取properties文件的内容 public void test() throws Exception{ String resource = "application.propertie ...

  7. Java代码操作properties文件(读取,新增/修改,删除)

    项目中需要用到操作properties文件中的数据,记录一下 package com.bonc.savepic.save; import java.io.FileNotFoundException; ...

  8. java工具类获取properties文件的配置

    import java.io.BufferedReader; import java.io.IOException; import java.io.InputStream; import java.i ...

  9. JAVA中自定义properties文件介绍

    Gradle中的使用 1. 使用gradle.properties buid.gradle 和 gradle.properties可以项目使用,在同一个项目中,build.gradle可以直接获取其同 ...

随机推荐

  1. ios专题 - CocoaPods - 初次体验

    [原创]http://www.cnblogs.com/luoguoqiang1985 这CocoaPods怎么用呢? 参考官方文章:guides.cocoapods.org/using/using-c ...

  2. 使用Ubuntu 新建vpn过程

    1.更新软件源      sudo apt-get update   2.安装pip    sudo apt-get install python-pip   3.安装shadowsocks    s ...

  3. Observer 模式

    Observer模式要解决的问题为:建立一个一(Subject)对多(Observer)的依赖关系,并且做到当“一”变化的时候,依赖这个“一”的多也能够同步改变.最常见的一个例子就是:对同一组数据进行 ...

  4. hdu 1396 Counting Triangles(递推)

    Counting Triangles Problem Description Given an equilateral triangle with n thelength of its side, p ...

  5. diff函数的实现——LCS的变种问题

    昨天去去哪儿笔试,碰到了一个我们一直很熟悉的命令(diff——ubuntu下面),可以比较字符串,即根据最长公共子串问题,如果A中有B中没有的字符输出形式如下(-ch),如果A中没有,B中有可以输出如 ...

  6. Linux 信号量互斥编程

    所谓信号量,其实就是一个数字.内核给这个数字赋予一定的含义,让它等于不同的值时所表示的意义不同.这样就可以用它来标示某种资源是否正被使用.信号的分类其实挺多的,主要还是二值和计数器.这里讨论二值 现在 ...

  7. YZOI Easy Round 2_回文串 string

    原文链接:http://laphets1.gotoip3.com/?id=18 Description 给出一个由小写字母组成的字符串,其中一些字母被染黑了,用?表示.已知原来的串不是 一个回文串,现 ...

  8. 配置Struts2的异常处理

    最好的方式是通过声明管理异常处理 1Action里面的execute()方法抛出所有异常:public String execute() throws Exception{} 2声明异常捕捉     ...

  9. android调试bug集锦 onActivityResult立即返回,并且被CANCEL

    症状: 在使用startActivityForResult调用照相机或者选择图片的时候,总是onActivityResult立马返回,resultCode=0 CANCEL. startActivit ...

  10. VS-FluentData 单元测试

    1. 使用VS2013建立一个控制台工程: using System; using System.Collections.Generic; using System.Linq; using Syste ...