首页 > Spring注解@Value

Spring注解@Value

本文参考自: https://blog.csdn.net/ryelqy/article/details/77453713

 

@Value能让我们在java代码中使用property文件的属性,使用@Value有两种形式:

1、@Value("#{configProperties['t1.msgname']}")

2、@Value("${t1.msgname}")

 

这两种形式,最大的区别在于配置:

1、

<bean id="configProperties" class="org.springframework.beans.factory.config.PropertiesFactoryBean">  <property name="locations">  <list>  <value>classpath:/config/t1.propertiesvalue>  list>  property>  
bean>

备注:configProperties是此bean的id,可自定义,并不是说一定得是configProperties

PropertiesFactoryBean 加载Properties文件的工厂类

 

2、@Value("${t1.msgname}")的配置既可以在1的基础上扩展,也能完全自己配置

扩展方式:

<bean id="propertyConfigurer" class="org.springframework.beans.factory.config.PreferencesPlaceholderConfigurer">  <property name="properties" ref="configProperties"/>  //1中bean的id
bean>  

备注:核心是PreferencePlaceholderConfigurer 可以理解为最优先的选择

 

自己配置:

<bean id="propertyConfigurer" class="org.springframework.beans.factory.config.PreferencesPlaceholderConfigurer">  <property name="location">  <value>config/t1.propertiesvalue>  property>  
bean>          

------------------------------------------------------

 

前提:

1、当前类使用@Component或由@Component扩展开来的注解,

2、xml文件内配置了是通过pakage扫描包

 

-------------------------------------------------------

 

spring boot中使用

spring boot中,我们只需要在application.properties中添加属性即可使用,spring boot已配置好上述一切

转载于:https://www.cnblogs.com/yanze/p/10641196.html

更多相关:

  • 本地的activemq的地址: http://localhost:8161/admin/ win10的启动avtivemq E:Program FilesActiveMQapache-activemq-5.15.3inwin64 win64里面的activemq.bat   消息队列的学习 学习地址2 这是spri...

  • Spring 实践 标签: Java与设计模式 Spring简介 Spring是分层的JavaSE/EE Full-Stack轻量级开源框架.以IoC(Inverse of Control 控制反转)和AOP(Aspect Oriented Programming 面向切面编程)为内核, 取代EJB的臃肿/低效/脱离现实. 主页...

  • 配置Configuration 一条configuration的名称可以是任意字符串,值可以是任意数据类型。 conf.set("name", "orisun"); conf.setInt("age",24); 在代码中设置只对本次代码运行有效,而在配置文件中设置则长久有效。 configuration-1.xml

  • Attached Property是Dependency Property的一种特殊形式,它是用DependencyProperty.RegisterAttached方法注册的,可以被有效地添加到任何继承自DependencyObject的对象中,所以被称为Attached Property。一开始,这可能听起来很奇怪,但这种机制在W...

  • ue4商城资源 Car Configurator Template 汽车配置器模板 ue4商城资源 Car Configurator Template 汽车配置器模板 Unreal Engine虚幻游戏引擎素材资源 Unreal Engine Marketplace –Car Configurator Template 4...

  • 一直在尝试一些写代码方便,阅读代码也很方便的工具,因为使用的是Mac,所以阅读源码上面sourceInsight就没办法用了。 从vscode – sublime – clion 想要可配置性强一点,软件轻一点,也能提供足够的便捷操作,不论是写代码还是快速索引源码,都希望在检索上面节省足够的时间。 vscode 和 sublime...

  • 每日杂事缠身,让自己在不断得烦扰之后终于有了自己的清静时光来熟悉一下我的工具,每次熟悉源码都需要先在windows端改好,拖到linux端,再编译。出现问题,还得重新回到windows端,这个过程太耗费时间。 vim作为唯一能够和windos 下的source insight一争高低的linux端的源码阅读器,只要将它短时间内合理利用...

  • 使用ubuntu(18.04) 作为软路由器连接互联网 背景: 最近要用ubuntu机器作为中继路由,需要配置一下,但是内网外网网上找了一圈,五花八门的,照着做没有一个靠谱的,遇到的问题也没有任何说明,遂写一篇教程以记录一下 功能说明: 简单来说,就是用其他机器的网络上互联网, 比如可以用其他机器的wifi上网等等场景 示意...

  • Spring-Boot 攻略 day01 spring-boot 一. 基本配置加运行 1. 导入配置文件(pom.xml 文件中) org.springframework.bootspring-boot-starter-parent