在基于Spring获取properties文件属性值的时候,一般使用@Value的方式注入配置文件属性值,但是总是需要引入这些多余的变量,有点不爽,今天研究了下,基于Spring解析@Value的方式,使用EmbeddedValueResolverAware解析配置文件,实现起来也很简单

工具类如下:

@Component
public class PropertiesUtil implements EmbeddedValueResolverAware { private StringValueResolver resolver; @Override
public void setEmbeddedValueResolver(StringValueResolver resolver) {
this.resolver = resolver;
} /**
* 获取属性,直接传入属性名称即可
* @param key
* @return
*/
public String getPropertiesValue(String key) {
StringBuilder name = new StringBuilder("${").append(key).append("}");
return resolver.resolveStringValue(name.toString());
} }

使用:

@Autowired
private PropertiesUtil propertiesUtil;
String s = propertiesUtil.getPropertiesValue("test.hello");

不同于读取静态文件的方式,这种方式能加载类似于 test.hello = ${test.a}/${test.b}的属性值

使用EmbeddedValueResolverAware读取配置文件内容的更多相关文章

  1. java读取配置文件内容

    利用com.typesafe.config包实现 <dependency> <groupId>com.typesafe</groupId> <artifact ...

  2. Python+selenium之读取配置文件内容

    Python+selenium之读取配置文件内容 Python支持很多配置文件的读写,此例子中介绍一种配置文件的读取数据,叫ini文件,python中有一个类ConfigParser支持读ini文件. ...

  3. Python+Selenium中级篇之-Python读取配置文件内容

    本文来介绍下Python中如何读取配置文件.任何一个项目,都涉及到了配置文件和管理和读写,Python支持很多配置文件的读写,这里我们就介绍一种配置文件格式的读取数据,叫ini文件.Python中有一 ...

  4. Python语言的configparser模块便捷的读取配置文件内容

    配置文件是在写脚本过程中经常会用到的,所以读取配置文件的模块configparser也非常重要,但是很简单. 首先我们的配置文件内容为: 这样的配置文件,[]里面的内容叫section,[]下面的内容 ...

  5. Spring MVC框架下在java代码中访问applicationContext.xml文件中配置的文件(可以用于读取配置文件内容)

    <bean id="propertyConfigurer" class="com.****.framework.core.SpringPropertiesUtil& ...

  6. spring读取配置文件内容并自动注入

    添加注解: @PropertySource(value={"classpath:venus.properties"}) 示例: import org.springframework ...

  7. java中读取配置文件内容,如读取.properties文件

    http://blog.csdn.net/u012255097/article/details/53122760

  8. C++之ARX 读取配置文件内容时,会出现编码问题(utf-8转unicode)

    CString CConvert::UTF82WCS(const char* szU8){ //预转换,得到所需空间的大小; int wcsLen = ::MultiByteToWideChar(CP ...

  9. SpringBoot2 java配置方式 Configuration和PropertySource结合读取配置文件

    JdbcConfig.java Configuration是配置文件 PropertySource 引入配置文件 value读取配置文件内容 package cn.itcast.config; imp ...

随机推荐

  1. SQLServer2012 (非)聚集索引存储探究

    SQLServer2012 (非)聚集索引存储探究 Author:zfive5(zidong) Email:zfive5@163.com 引子 因为写了前一篇文字<SQLServer2012 表 ...

  2. keras 类似问题解决:model找不到,或者无法下载

    Applications Keras Applications are deep learning models that are made available alongside pre-train ...

  3. axios 简单常用笔记

    简单认知: 1.config.data是POST参数,config.params是GET参数 axios(url, [config]) + qs + application/x-www-form-ur ...

  4. bat 批处理脚本定时执行命令

    有个需求,需要每天定时执行下某个任务,一天一次.由于工作机器环境问题,没有办法设置windows 定时任务.查找资料并完成如下脚本. 功能:每天定时执行一次任务. 复制如下脚本,到一个test.vbs ...

  5. Navicat_Premium 连接oracle遇到ORA-28457

    解决方案很简单,我用oracle文件目录下的oci.dll替换了navicat文件目录下的oci.dll,之后很顺畅地就连上了.

  6. php反射获取类和方法中的注释

    通过php中的反射机制,获取该类的文档注释,再通过获取其所有的方法,获取方法的注释 所用到的主要类及其方法 ReflectionClass ReflectionClass::getDocComment ...

  7. VS2017中建立ASP.NET MVC 4.0项目

    新的项目需要运行在WIN2003上,又不想用ASPX了,只好用回ASP.NET MVC4.0了,可是在VS2017中已经没有MVC4的模板了,网上下载的安装了也没有,只好把以前的MVC4的项目拿 出来 ...

  8. Atitti opencv2.4 实现的人脸检测 attilax总结

    Atitti opencv2.4 实现的人脸检测 attilax总结 1.1. 1.OpenCV人脸检测的方法1 1.2. /atiplat_img/src/com/attilax/facedetec ...

  9. 【Unity】4.6 灯光

    分类:Unity.C#.VS2015 创建日期:2016-04-11 一.简介 灯光(Light,也叫光源)是每一个场景的重要组成部分,用于照亮场景和对象,从而让游戏具有自己的个性和风格,比如利用灯光 ...

  10. 如何正确的重写equals() 和 hashCode()方法

    比较两个Java对象时, 我们需要覆盖equals和  hashCode. public class User{ private String name; private int age; priva ...