欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

详解Spring通过@Value注解注入属性的几种方式

程序员文章站 2024-03-02 11:17:16
场景 假如有以下属性文件dev.properties, 需要注入下面的tag tag=123 通过propertyplaceholderconfigurer...

场景

假如有以下属性文件dev.properties, 需要注入下面的tag

tag=123

通过propertyplaceholderconfigurer

<bean class="org.springframework.beans.factory.config.propertyplaceholderconfigurer">
  <property name="location" value="dev.properties" />
</bean>

代码

@value("${tag}")
private string tag;

通过preferencesplaceholderconfigurer

<bean id="appconfig" class="org.springframework.beans.factory.config.preferencesplaceholderconfigurer">
  <property name="location" value="dev.properties" />
</bean>

代码:

@value("${tag}")
private string tag;

通过propertiesfactorybean

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

代码:

@value("#{config['tag']}")
private string tag;

通过util:properties

效果同propertiesfactorybean一样

代码:

@value("#{config['tag']}")
private string tag;

其他方式

有时也可以不通过文件,直接写字面量

<bean id="appconfig" class="org.springframework.beans.factory.config.propertyplaceholderconfigurer">
  <!--<property name="location" value="classpath:${env}.properties" />-->
  <property name="properties">
    <props>
      <prop key="tag">123</prop>
    </props>
  </property>
</bean>

代码:

@value("${tag}")
private string tag;

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。