@ConfigurationProperties注解的作用和示例

@ConfigurationProperties是一个Spring框架中的注解,它用于将配置文件中的属性值注入到一个Bean中,通常用于将应用程序的配置属性注入到Java对象中。

在Spring Boot中,@ConfigurationProperties注解可以和@Configuration注解一起使用,用于定义一个配置类,配置类中的属性值会从配置文件中读取,并被注入到该类中。一般情况下,该类中的属性值和配置文件中的属性名称是一一对应的。

以下是@ConfigurationProperties注解的示例:

@Configuration
@ConfigurationProperties(prefix = "myapp")
public class MyAppConfig {
    private String username;
    private String password;
    private int timeout;

    // getter and setter methods
}

在上面的示例中,@ConfigurationProperties注解的prefix属性指定了配置文件中的属性前缀为myapp,因此username、password和timeout这三个属性值会从配置文件中读取myapp.username、myapp.password和myapp.timeout属性的值。

@ConfigurationProperties注解的好处是可以将属性值注入到一个Java Bean中,便于使用,同时也可以校验属性值的正确性,因为可以在Java Bean中定义一些校验规则来确保属性值的正确性。此外,@ConfigurationProperties注解也支持类型转换、默认值设置等功能,非常灵活。