Spring Boot属性注入

属性注入

SpringBoot提供了两种属性注入方法

1.Spring框架下的@Value方法

2.SpringBoot提供的@ConfigurationProperties(类型安全的属性注入)

Ex:

book.properties中有如下属性,将其注入到Book类中

book.name=三国演义
book.author=罗贯中
book.id=99

先用@PropertySource("classpath:book.properties")注入配置文件

1.@Value

@Component
@PropertySource("classpath:book.properties")
public class Book {
    @Value("${book.id}")
    private Long id;
    @Value("${book.name}")
    private String name;
    @Value("${book.author}")
    private String author;
    ......
}

2.@ConfigurationProperties

@Component
@PropertySource("classpath:book.properties")
@ConfigurationProperties(prefix = "book")
public class Book {
    private Long id;
    private String name;
    private String author;
    ......
}

SpringBoot提供的@ConfigurationProperties可以自动扫描book.properties中的属性并与Book类中的属性一一对应,自动注入

你可能感兴趣的:(Spring Boot属性注入)