Spring中使用@Value读取porperties文件中的属性值方法总结及注意事项
本文为博主原创,转载请注明出处。
此前曾总结过使用工具类读取properties文件中的属性值,有兴趣的可以看一下。
如何快速获取properties中的配置属性值:https://www.cnblogs.com/zjdxr-up/p/7763485.html
java中Properties类及读取properties中属性值:https://www.cnblogs.com/zjdxr-up/p/7763485.html
这两种方式都是在项目启动时,将properties文件加载,第一种是将属性文件中的值,使用工具类,即key-value的形式,在使用
的时候,根据key获取value值。
第二种是将属性文件中的属性封装为一个对象,key为属性,value为属性值,在项目启动时候加载,使用的时候,可以使用对象或工具类
获取属性值方法直接获取。
最近使用@Value注解读取属性文件中的值比较频繁,在这总结一下。
第一种:使用PropertiesFactoryBean解析properites文件
<!-- 资源文件配置 -->
<bean id="configProperties"
class="org.springframework.beans.factory.config.PropertiesFactoryBean">
<property name="locations">
<list>
<value>classpath:conf/web.properties</value>
</list>
</property>
</bean>
读取方法:@Value("#{id['key']}"):其中的id为PropertiesFactoryBean在spring配置文件中配置的id,key为properties文件中的key。
@Value("#{configProperties['sh.flowLstUrl']}")
private String flowLstUrl;
第二种:通过PreferencesPlaceholderConfigurer解析properites文件
<bean id="config" class="org.springframework.beans.factory.config.PreferencesPlaceholderConfigurer">
<property name="location" value="dev.properties" />
</bean>
读取方法:
@Value("${baidu.http.url}")
private String url;
注意:PropertiesFactoryBean
是PropertiesLoaderSupport
直接的实现类, 专门用来管理properties文件的工厂bean,默认是单例的。
PropertyPlaceholderConfigurer
是解决 properties 文件占位符问题的,也实现了 PropertiesLoaderSupport
类。
Spring中使用@Value读取porperties文件中的属性值方法总结及注意事项的更多相关文章
- 读取properties文件并获取属性值
1.Properties与ResourceBundle 两个类都可以读取属性文件中以key/value形式存储的键值对,ResourceBundle读取属性文件时操作相对简单. 2.Propertie ...
- linux读取yaml文件的某个属性值
trigger=$(cat test.yaml | grep "trigger" | awk '{print $2}') 该条命令的意思是:读取test.yaml文件中的trigg ...
- silverlight用Encoding.UTF8读取shape文件的中文属性值 出现乱码
最近用Silverlight读取shape文件,读出的属性居然是乱码. 原因是:Silverlight不支持GB2312. 解决方案: 下载该地址的代码http://encoding4silverli ...
- 如何在C#中打开和读取EXCEL文件
这篇文章向您展示如何在C#Windows Forms Application中使用ExcelDataReader,ExcelDataReader.DataSet打开和读取Excel文件.创建一个新的W ...
- 读取xml文件中的配置参数实例_java - JAVA
文章来源:嗨学网 敏而好学论坛www.piaodoo.com 欢迎大家相互学习 paras.xml文件 <?xml version="1.0" encoding=" ...
- SpringMVC 实现POI读取Excle文件中数据导入数据库(上传)、导出数据库中数据到Excle文件中(下载)
读取Excale表返回一个集合: package com.shiliu.game.utils; import java.io.File; import java.io.FileInputStream; ...
- 读取Excel文件中的单元格的内容和颜色
怎样读取Excel文件中的单元格的内容和颜色 先创建一个Excel文件,在A1和A2中随意输入内容,设置A1的字体颜色为红色,A2的背景为黄色.需要 using Excel = Microsoft.O ...
- java 中读取本地文件中字符
java读取txt文件内容.可以作如下理解: 首先获得一个文件句柄.File file = new File(); file即为文件句柄.两人之间连通电话网络了.接下来可以开始打电话了. 通过这条线路 ...
- Java中读取txt文件中中文字符时,出现乱码的解决办法
这是我写的一个Java课程作业时,遇到的问题. 问题描述: 我要实现的就是将txt文件中的内容按一定格式读取出来后,存放在相应的数组. 我刚开始运行时发现,英文可以实现,但是中文字符就是各种乱码. 最 ...
随机推荐
- js 判断js,css是否引入,确保不重复引入
基本原理:function loadjscssfile(filename, filetype){if (filetype=="js"){ //if filename is a ...
- SQL语句精简版
select US.QQ,US.tel,US.username,SC.EnglishScore,SC.MathScorefrom Userinfor US right join Score SC on ...
- 利用XML语法 SQL 列转行
--行转列 固定xml语法 declare @xml xml ; set @xml=cast('<v>2</v><v>4</v><v>3&l ...
- Java 实现 AES 加解密
毕业课题中需要使用加解密算法,要求加解密前后的数据长度不会变化,查了一些资料,发现可以采用AES加密的CFB跟OFB模式是无填充的模式,可以保持加解密前后数据的长度相等.下面上代码: import j ...
- iOS 调试 crash breakpoint EXC_BAD_ACCESS SIGABRT
原文地址:iOS 调试 crash breakpoint EXC_BAD_ACCESS SIGABRT作者:流年若离殇 在调试程序的时候,总是碰到crash的bug,而且一追踪就是一些汇编的代码,让人 ...
- RunExecuteFile
using System; using System.Collections.Generic; using System.Diagnostics; using System.Linq; using S ...
- 极验验证使用-滑动&选字验证码
准备 SDK下载 首先在极验官网下载好SDK,附上官网链接,点此可直接下载python版zip包. 模块安装 使用该SDK时发现它依赖两个模块,分别是geetest和requests. pip ins ...
- js 整数型数组和字符型数组相互转换
需求背景: 需要将 a = [1,2,3,4,5] 转换成 a = ['1','2','3','4','5'](整数型数组转换成字符型没找到直接的方法,思路就是先将数组转换成字符串,然后再将字符串转 ...
- 对象缓冲池 ( cc.pool ) :
对象缓冲池 ( cc.pool ) : 作用 : 优化创建效率 , 尤其是针对需要多次创建的情况 . 缓冲池 API : 缓冲池 ( cc.pool ) 提供的函数并不多 , 只有5个 . cc.po ...
- Streaming从Spark2X迁移到Spark1.5 summary
配置文件的加载是一个难点,在local模式下非常容易,但是submit后一直报找不到文件,后来采用将properties文件放在加载类同一个package下,打包到同一个jar中解决. import ...