本文为博主原创,转载请注明出处。

  此前曾总结过使用工具类读取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文件

  1. <!-- 资源文件配置 -->
  2. <bean id="configProperties"
  3. class="org.springframework.beans.factory.config.PropertiesFactoryBean">
  4. <property name="locations">
  5. <list>
  6. <value>classpath:conf/web.properties</value>
  7. </list>
  8. </property>
  9. </bean>

读取方法:@Value("#{id['key']}"):其中的id为PropertiesFactoryBean在spring配置文件中配置的id,key为properties文件中的key。

@Value("#{configProperties['sh.flowLstUrl']}")
private String flowLstUrl;

第二种:通过PreferencesPlaceholderConfigurer解析properites文件

  1. <bean id="config" class="org.springframework.beans.factory.config.PreferencesPlaceholderConfigurer">
  2. <property name="location" value="dev.properties" />
  3. </bean>

读取方法:

  1. @Value("${baidu.http.url}")
  2. private String url;

注意:PropertiesFactoryBeanPropertiesLoaderSupport 直接的实现类, 专门用来管理properties文件的工厂bean,默认是单例的。

PropertyPlaceholderConfigurer是解决 properties 文件占位符问题的,也实现了 PropertiesLoaderSupport 类。

Spring中使用@Value读取porperties文件中的属性值方法总结及注意事项的更多相关文章

  1. 读取properties文件并获取属性值

    1.Properties与ResourceBundle 两个类都可以读取属性文件中以key/value形式存储的键值对,ResourceBundle读取属性文件时操作相对简单. 2.Propertie ...

  2. linux读取yaml文件的某个属性值

    trigger=$(cat test.yaml | grep "trigger" | awk '{print $2}') 该条命令的意思是:读取test.yaml文件中的trigg ...

  3. silverlight用Encoding.UTF8读取shape文件的中文属性值 出现乱码

    最近用Silverlight读取shape文件,读出的属性居然是乱码. 原因是:Silverlight不支持GB2312. 解决方案: 下载该地址的代码http://encoding4silverli ...

  4. 如何在C#中打开和读取EXCEL文件

    这篇文章向您展示如何在C#Windows Forms Application中使用ExcelDataReader,ExcelDataReader.DataSet打开和读取Excel文件.创建一个新的W ...

  5. 读取xml文件中的配置参数实例_java - JAVA

    文章来源:嗨学网 敏而好学论坛www.piaodoo.com 欢迎大家相互学习 paras.xml文件 <?xml version="1.0" encoding=" ...

  6. SpringMVC 实现POI读取Excle文件中数据导入数据库(上传)、导出数据库中数据到Excle文件中(下载)

    读取Excale表返回一个集合: package com.shiliu.game.utils; import java.io.File; import java.io.FileInputStream; ...

  7. 读取Excel文件中的单元格的内容和颜色

    怎样读取Excel文件中的单元格的内容和颜色 先创建一个Excel文件,在A1和A2中随意输入内容,设置A1的字体颜色为红色,A2的背景为黄色.需要 using Excel = Microsoft.O ...

  8. java 中读取本地文件中字符

    java读取txt文件内容.可以作如下理解: 首先获得一个文件句柄.File file = new File(); file即为文件句柄.两人之间连通电话网络了.接下来可以开始打电话了. 通过这条线路 ...

  9. Java中读取txt文件中中文字符时,出现乱码的解决办法

    这是我写的一个Java课程作业时,遇到的问题. 问题描述: 我要实现的就是将txt文件中的内容按一定格式读取出来后,存放在相应的数组. 我刚开始运行时发现,英文可以实现,但是中文字符就是各种乱码. 最 ...

随机推荐

  1. ubuntu的apt-get install的默认安装路径(转)

    一.apt-get 安装 deb是debian linus的安装格式,跟red hat的rpm非常相似,最基本的安装命令是:dpkg -i file.deb或者直接双击此文件 dpkg 是Debian ...

  2. 使用docker容器运行MySQL数据库并持久化数据文件

    1.下载mysql镜像 # docker pull mysql 2.启动mysql容器 # docker run -itd -v /data:/var/lib/mysql -p 33060:3306 ...

  3. Java ee第五周作业

    Applet: Applet是采用Java编程语言编写的小应用程序,该程序可以包含在 HTML(标准通用标记语言的一个应用)页中,与在页中包含图像的方式大致相同. 含有Applet的网页的HTML文件 ...

  4. Docker入门基础(一)

    Docker入门基础 Linux只存在文件目录,不存在“盘”的概念 Dockers优点:方便部署环境.资源占用少(微服务) Docker的三大概念 镜像:类似虚拟机的镜像.用俗话说就是安装文件.容器: ...

  5. windows7,python3使用time.strftime()函数报ValueError: embedded null byte

    windows7环境下,执行代码报ValueError: embedded null byte时,在原代码前面加一行代码:locale.setlocale(locale.LC_ALL,'en')即可解 ...

  6. ES6 字符串

    拓展的方法 子串的识别 ES6 之前判断字符串是否包含子串,用 indexOf 方法,ES6 新增了子串的识别方法. includes():返回布尔值,判断是否找到参数字符串. startsWith( ...

  7. vue:不同环境配置不同打包命令

    修改prod.env.js 'use strict'const target = process.env.npm_lifecycle_event;if (target == 'build') { // ...

  8. 跑 vue 项目

    cd ***** npm install  或 yarn(推荐) npm run dev 若是报错: missing script: dev ERR! A complete log of this r ...

  9. 7.0-uC/OS-III中断管理

    1.CPU的中断处理 理器通常有多个中断源. 例如, UART中断. DMA中断. ADC中断.定时器中断等. 2.中断器件标志中断处理器,然后中断处理器将优先级最高的中断提交给CPU. 现在的中断控 ...

  10. select默认选中