@ConfigurationProperties 注解分析

@ConfigurationProperties 注解分析

@ConfigurationProperties 是 Spring Boot 提供的一个非常实用的注解,用于将配置文件中的属性自动绑定到 Java Bean 中。这使得配置文件中的属性可以方便地映射到 Java 类的字段上。

1. 基本用途

自动绑定:将配置文件中的属性自动绑定到指定的 Java Bean 上。
简化配置:减少手动解析配置文件的工作量。

2. 注解属性

prefix:指定配置文件中的前缀,用于匹配属性。
ignoreUnknownFields:是否忽略未知字段,默认为 false。
ignoreInvalidFields:是否忽略无效字段,默认为 false。

3. 使用示例

假设配置文件(如 application.properties 或 application.yml)中有以下内容:

@Data
@AllArgsConstructor
@NoArgsConstructor
@Builder
@Configuration
@ConfigurationProperties(prefix = "user-config", ignoreInvalidFields = true)
public class PlanTaskConfig implements Serializable {

    private String currentName = "lili";
    private String Path = "/temp/pic";
    private String DubboGroup = "diddadida-server";
    private String illegalChars = "[/:*?\"<>|\\\\]";
}

4. 详细说明

4.1 prefix 属性

作用:指定配置文件中的前缀,用于匹配属性
示例:prefix = “user-config” 表示所有以 user-config. 开头的属性都会被绑定到 PlanTaskConfig 类的字段上。

4.2 ignoreUnknownFields 属性

作用:是否忽略配置文件中未在 Java 类中声明的字段。
默认值:false,即如果配置文件中有未声明的字段会抛出异常。
示例:ignoreUnknownFields = true 可以避免因配置文件中有未声明的字段而抛出异常。

4.3 ignoreInvalidFields 属性

作用:是否忽略配置文件中无法正确解析的字段
默认值:false,即如果配置文件中的某个字段无法正确解析会抛出异常。
示例:ignoreInvalidFields = true 可以避免因配置文件中的某个字段无法正确解析而抛出异常。

5. 配合使用的注解

@Configuration:将类标记为配置类。
@EnableConfigurationProperties:启用配置属性的自动绑定功能。
@Component:将类标记为组件,以便 Spring 容器自动扫描并管理。

6. 注意事项

兼容性:确保配置文件中的属性名称与 Java 类的字段名称一致。
安全性:在生产环境中,建议使用严格的属性检查机制,避免不必要的错误。
通过以上详细说明,你可以更好地理解和使用 @ConfigurationProperties 注解来简化配置文件的绑定过程。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值