@ConfigurationPropertie
时间: 2023-11-07 19:01:52 浏览: 30
@ConfigurationProperties和@Value是两个注解,用于在SpringBoot项目中进行属性注入。@ConfigurationProperties注解支持属性文件和JavaBean的映射,可以将属性值注入到JavaBean对象中。而@Value注解支持SpEL表达式,可以直接注入属性值。
如果有多个属性需要映射,并且经常被复用,推荐使用@ConfigurationProperties注解。如果只需要读取单个属性值,则使用@Value注解更加方便。
@ConfigurationProperties注解的使用方法是在配置类或者组件类上添加该注解,并使用prefix属性指定属性的前缀。而@Value注解可以直接在字段或者方法上使用,并指定具体的属性名或者SpEL表达式。
举个例子,如果我们有一个TestDataSource类作为配置测试实体,我们可以使用@ConfigurationProperties注解来将属性值注入到该类中。
```java
@Config(prefix = "default")
@Component
@Data
public class TestDataSource {
private String username;
private String password;
private int maxActiveCount;
}
```
另外,我们也可以使用@ConfigurationProperties注解在Spring Boot项目中的Bean上,让其自动注入属性值。例如:
```java
@Component
@ConfigurationProperties(prefix = "config")
public class TestBean {
private String username;
private String password;
}
```
这样,在使用TestBean的地方,username和password就会自动注入对应的属性值。