SpringBoot @Value 注解使用

@Value 注解用于将配置文件中的属性值注入到Spring管理的Bean中。

1. 基本用法

@Value 可以直接注入配置文件中的属性值。

配置文件 (application.properties 或 application.yml)

配置文件定义需要注入的数据。

yaml 复制代码
consumer:
  username: lisi
  age: 23
  hobby: sing,read,sleep
  subject: 100,150

注入属性值

分别定义字符串、整数、数组、集合类型成员变量,并将配置文件中对应数据注入。

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

import java.util.Arrays;
import java.util.List;

@Component
public class Consumer {

    @Value("${consumer.username}")
    private String username;
    @Value("${consumer.age}")
    private int age;
    @Value("${consumer.hobby}")
    private String[] hobby;
    @Value("${consumer.subject}")
    private List<Integer> subject;

    @Override
    public String toString() {
        return "Consumer{" +
                "username='" + username + '\'' +
                ", age=" + age +
                ", hobby=" + Arrays.toString(hobby) +
                ", subject=" + subject +
                '}';
    }
}

@Value 通常用于注入简单类型(如字符串、数字等)。如果需要注入复杂对象,建议使用 @ConfigurationProperties。

测试运行

java 复制代码
@SpringBootTest
public class WebTest {

    @Autowired
    private Consumer consumer;
    @Test
    public void test(){
        System.out.println(consumer);
    }

}
相关推荐
i***22078 分钟前
springboot整合libreoffice(两种方式,使用本地和远程的libreoffice);docker中同时部署应用和libreoffice
spring boot·后端·docker
代码or搬砖44 分钟前
SpringMVC的执行流程
java·spring boot·后端
极光代码工作室2 小时前
基于SpringBoot的流浪狗管理系统的设计与实现
java·spring boot·后端
思密吗喽2 小时前
景区行李寄存管理系统
java·开发语言·spring boot·毕业设计·课程设计
star_11122 小时前
Jenkins部署后端springboot微服务项目
spring boot·微服务·jenkins
q***06473 小时前
Spring Boot 从 2.7.x 升级到 3.3注意事项
数据库·hive·spring boot
q***64973 小时前
Spring Boot 各种事务操作实战(自动回滚、手动回滚、部分回滚)
java·数据库·spring boot
倚肆4 小时前
Spring Boot Security 全面详解与实战指南
java·spring boot·后端
8***f3955 小时前
工作中常用springboot启动后执行的方法
java·spring boot·后端
v***88565 小时前
Springboot项目:使用MockMvc测试get和post接口(含单个和多个请求参数场景)
java·spring boot·后端