1.Spring@Value注解的使用
说明:一般我们在Spring工程中想读取配置文件中的配置时,避免不了使用@Value注解读取配置文件(一般为.properties类型的配置文件)
那么我们的步骤为以下:
1.在工程添加配置文件:
application.properties
内容如下(仅供参考)
#设置统一消息平台的服务器地址
mq.url=10.120.20.182:9876
#设置客户端账号
mq.username=admin
#设置客户端密钥
mq.password=admin
#设置 Topic Name
mq.topic.name=BH_DEVCIE_STATE,BH_DEVCIE_STATE1,BH_DEVCIE_STATE2
#设置订阅消息的标签,可以指定消费某一类型的消息,默认*表示消费所有类型的消息
mq.tags=*
#设置是否需要加密传输:true/false
#设置应用接口请求响应是否加密
encrypt=true
2.在Spring主配置文件中添加如下配置
<bean id="configProperties" class="org.springframework.beans.factory.config.PropertiesFactoryBean">
<property name="locations">
<list>
<value>classpath*:application.properties</value>
</list>
</property>
</bean>
<bean id="propertyConfigurer" class="org.springframework.beans.factory.config.PreferencesPlaceholderConfigurer">
<property name="properties" ref="configProperties" />
</bean>
3.在java类中的写法
比如我们想注入mq.url的配置值,
写法1:
@Value("#{configProperties['mq.url']}")
private String url;
写法2:
@Value("#{'mq.url'}")
private String url;
4.如果我们想要把配置文件中的配置值赋给java类中的静态变量,写法如下
public static Boolean encrypt;
@Value("#{configProperties['encrypt']}")
public void setEncrypt(Boolean encrtpt) {
ConfirmRequest.encrypt = encrtpt;
}