0
点赞
收藏
分享

微信扫一扫

面向接口编程:依赖倒置原则的重要性

扶摇_hyber 2024-09-30 阅读 5
springjava

在 Spring 中,如果使用 @Value 注解注入值,不能将其应用于 static 字段。Spring 只能为实例变量注入值,不能直接对静态变量进行注入。

使用 @PostConstruct 初始化

如果确实需要在静态上下文中使用该值,可以使用 @PostConstruct 方法来设置静态变量:

import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Component;

@Component
public class UserConfig {

    @Value("${upload.user}")
    private String user;

    private static String staticUser;

    @PostConstruct
    public void init() {
        staticUser = user;
    }

    public static String getStaticUser() {
        return staticUser;
    }
}

 现在可以通过 UserConfig.getStaticUser() 来访问 upload.user 的值。

举报

相关推荐

0 条评论