@Value 注解是 Spring 框架中的一个注解,用于从属性文件、环境变量、Java 系统属性等地方读取值,并将这些值注入到 Spring 管理的 Bean 中。
- @Component
- public class MyBean {
-
- @Value("${my.property}")
- private String myProperty;
-
- // Getter and setter
- }
@Value("${my.property}"):这里 ${my.property} 是 SpEL(Spring Expression Language)表达式,用于指定要注入的值的来源和名称。${my.property} 表示从属性文件中读取名为 my.property 的属性值,并将其注入到 myProperty 字段中。
private String myProperty;:这是一个类成员变量,用于存储注入的属性值。
@Component:这个注解通常用于标识一个类作为 Spring 管理的 Bean,并告诉 Spring 在启动时要将这个类实例化并放入应用程序的上下文中。
@Value 注解可以用于字段、方法和构造函数上。IllegalArgumentException 异常。@Value 注解时,需要确保配置属性的名称和属性文件或其他来源中的名称一致。@Value 注解是一个非常方便的工具哈,可以帮助我们在 Spring 应用程序中轻松地读取和注入属性值,而不需要编写繁琐的代码来处理属性文件或环境变量。
拓展
而在 Spring 中,使用 $ 符号表示属性占位符,通常用于从配置文件中读取属性值。Spring 在解析配置文件时会将 ${} 中的属性名替换为对应的属性值。