@Configuration用在类上,让Spring注入被注解的类的实例。
@EnableConfigurationProperties(CustomProperty.class)
使使用@ConfigurationProperties注解的类生效,等同于在ConfigurationProperties注解的类上添加@Component
@ConfigurationProperties(prefix="book.config")
通过配置文件的属性与注解类的属性一一对应,与@Value功能等同,只是ConfigurationProperties对属性名对应比较严格。
@Conditional(CustomCondition.class)
其实这个是Spring Context中的注解,要求CustomConditon类实现Condition接口,实现match方法,当方法返回true时,Spring注入被注解的类的实例。
@ConditionalOnProperty(prefix="",value="true",matchIfMissing=true)
当从配置文件中能够找到属性时,Spring会注入被注解的类的实例。