在properties或者yml中定义一些属性和参数,在bean或者config中需要使用这些参数.
启动类开启 support for {@link ConfigurationProperties}
package org.springframework.boot.context.properties;import java.lang.annotation.documented;import java.lang.annotation.ElementType;import java.lang.annotation.Retention;import java.lang.annotation.RetentionPolicy;import java.lang.annotation.Target;import org.springframework.context.annotation.Bean;import org.springframework.context.annotation.import;@Target(ElementType.TYPE)
@Retention(RetentionPolicy.RUNTIME)
@documented
@import(EnableConfigurationPropertiesimportSelector.class)
public @interface EnableConfigurationProperties {
Class>[] value() default {};
}配置类中使用@ConfigurationProperties(prefix = "")注解
package org.springframework.boot.context.properties;import java.lang.annotation.documented;import java.lang.annotation.ElementType;import java.lang.annotation.Retention;import java.lang.annotation.RetentionPolicy;import java.lang.annotation.Target;import org.springframework.core.annotation.AliasFor;@Target({ ElementType.TYPE, ElementType.METHOD })@Retention(RetentionPolicy.RUNTIME)@documentedpublic @interface ConfigurationProperties {
@AliasFor("prefix") String value() default "";
@AliasFor("value") String prefix() default "";
boolean ignoreInvalidFields() default false;
boolean ignoreUnknownFields() default true;
}
作者:H_Man
链接:https://www.jianshu.com/p/c735787959b1



