在Spring Boot中,你可以使用@Value
注解来将配置文件(如application.properties
或application.yml
)中的值注入到组件(如控制器、服务等)中。然而,如果你想将值注入到静态属性中,你需要使用不同的方法,因为Spring 框架不支持直接注入静态属性。
一种常见的解决方案是使用初始化块或者在应用启动时手动设置静态属性。以下是一个使用@PostConstruct
注解来在Spring容器初始化后设置静态属性的例子:
1.在application.properties
或application.yml
中定义你的配置: ![](https://i-blog.csdnimg.cn/direct/beee7e5c48ed4ca99caaa72c8774d21b.png)
2.创建一个配置类,注入值,并提供一个静态方法来设置静态属性:
@Configuration
@ConfigurationProperties(prefix = "alioss")
@Data
public class AliOssConfigs {
private String aliAccessKeyId;
private String aliAccessKeySecret;
@PostConstruct
public void init(){
OssUtil.setConfigInfo(this);
}
}
init方法在Bean创建后通过@PostConstruct注解设置OssUtil工具类的配置信息