java中使用@Value获取配置文件中的值,并变为静态的属性

在 Spring 中,@Value 注解通常用于将配置文件中的值注入到非静态的实例变量中。因为 @Value 是通过 Spring IoC 容器来进行属性赋值的,而静态变量与类本身直接关联,不属于具体实例。

如果想要将配置文件的值注入到静态变量中

以下是一个示例:

java 复制代码
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Component;

import javax.annotation.PostConstruct;

@Component
public class ConfigReader {

    private static String dbUrl;
    private static String dbUser;
    private static String dbPassword;

    @Value("${db.url}")
    private void setDbUrl(String url) {
        ConfigReader.dbUrl = url;
    }

    @Value("${db.user}")
    private void setDbUser(String user) {
        ConfigReader.dbUser = user;
    }

    @Value("${db.password}")
    private void setDbPassword(String password) {
        ConfigReader.dbPassword = password;
    }

}

在上述代码中,@Value 注解被用于非静态方法上。在这些方法中,静态变量会被赋予配置文件中的值。

相关推荐
Pandaconda2 分钟前
【计算机网络 - 基础问题】每日 3 题(十)
开发语言·经验分享·笔记·后端·计算机网络·面试·职场和发展
loveLifeLoveCoding3 分钟前
Java List sort() 排序
java·开发语言
草履虫·10 分钟前
【Java集合】LinkedList
java
AngeliaXue12 分钟前
Java集合(List篇)
java·开发语言·list·集合
世俗ˊ13 分钟前
Java中ArrayList和LinkedList的比较
java·开发语言
顶呱呱程序15 分钟前
2-100 基于matlab的水果识别
开发语言·matlab·边缘检测·水果识别·特征提取·matlab-gui
zhouyiddd17 分钟前
Maven Helper 插件
java·maven·intellij idea
攸攸太上26 分钟前
Docker学习
java·网络·学习·docker·容器
Milo_K33 分钟前
项目文件配置
java·开发语言
程序员大金37 分钟前
基于SpringBoot+Vue+MySQL的养老院管理系统
java·vue.js·spring boot·vscode·后端·mysql·vim