springboot 使用 @Value 注解给静态变量赋值,实现配置全局化

问题:目前碰到配置文件中的属性有好几个文件需要使用,这样的话,这几个类都需要使用 @Value 进行赋值,比较麻烦,所以现在使用 @Value 给一个公共类的静态变量赋值,然后这几个类直接通过类名进行调用。
但是,平时使用 @Value 注解时都是给普通变量进行赋值,现在碰到需要给静态变量进行赋值,直接使用 @Value 注解已经无法赋值了,所以需要通过下面的方法来进行解决

比如平时是使用这种方法,给普通变量进行赋值,这样一来每个类需要用到的话就需要每个类都写一遍,需要做重复工作。


    @Value("${server.address}")
    public  String address;

现在想了一个办法,写一个全局配置类,将常用配置都写成静态,直接通过类名进行调用,这样就比较方便,不需要重复赋值了
但是,使用下面的代码通常运行之后,获取出来的变量都是 null

    @Value("${server.port}")
    public static String address;

在这里插入图片描述

解决办法如下:

@Configuration
public class BaseConfiguration {


    public static String address;


    @Value("${server.address}")
    public void setAddress(String param){
        address = param;
    }
}

先声明好静态变量,然后通过 set 方法对静态变量进行赋值,这样就能够取到配置文件中的信息了。

在这里插入图片描述

关注公众号查看更多资源
在这里插入图片描述
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值