@ConfigurationProperties 注解

用于外部化(externalized)配置。

这个注解可以添加到类定义或者 Configuration 类的 @Bean 方法,用来绑定并检验外部属性,例如.properties 文件。

注意:和@Value相反, SpEL 表达式不会被评估,因为属性值是外部化(externalized)的。

使用方式

最典型的使用方式,提供 prefix 和 locations 两个属性指定属性文件的来源和属性的前缀:

@ConfigurationProperties(prefix = "dolphin", locations = "classpath:dolphin.properties")
public class DolphinServerProperties {}

参数列表

属性前缀

  • value
  • prefix

    要绑定到这个对象的有效的属性的名字前缀。value 和 prefix 是同义词

属性文件地址

  • locations

    可选,提供清晰的资源位置用于绑定。默认这些指定位置的配置将和默认配置合并。这些资源优先于任何其他定义在环境中的属性来源。

  • merge

    标记从指定位置转载的配置应该和默认配置合并。默认true。

对属性的检验

  • ignoreInvalidFields

    标记当有非法字段绑定到这个对象时可以被忽略。"非法"指根据使用的binder非法,通常这意味着字段类型错误(或者无法强制转为正确的类型).

    默认false。这意味着不能忽略字段非法,所以只能报错。

  • ignoreNestedProperties

    标记当绑定到这个对象字段的名字中带有句号(即".")时应该被忽略。默认false。

    默认false就不支持内嵌属性了,如果要支持需要设置为true。

  • ignoreUnknownFields

    标记当有未知字段绑定到这个对象时可以被忽略。未知字段可能是属性中的一个符号错误。

    默认true。

  • exceptionIfInvalid

    标记如果有可用的Validator并且检验失败时应该抛出异常。如果设置为false,验证错误将被吞掉。可能写日志,但是不传播到调用者。

    默认true。

results matching ""

    No results matching ""