首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Spring 注解@ConfigurationProperties

简介 Spring源码中大量使用了ConfigurationProperties注解,比如server.port就是由该注解获取到的,通过与其他注解配合使用,能够实现Bean的按需配置。...该注解有一个prefix属性,通过指定的前缀,绑定配置文件中的配置,该注解可以放在类上,也可以放在方法上 @Target({ ElementType.TYPE, ElementType.METHOD }...) @Retention(RetentionPolicy.RUNTIME) @Documented public @interface ConfigurationProperties {} 可以从注解说明中看到...,当将该注解作用于方法上时,如果想要有效的绑定配置,那么该方法需要有@Bean注解且所属Class需要有@Configuration注解。...和@value 有着相同的功能,但是@ConfigurationProperties的写法更为方便。

1.9K11
您找到你想要的搜索结果了吗?
是的
没有找到

@ConfigurationProperties

@ConfigurationProperties 当想需要获取到配置文件数据时,除了可以用 Spring 自带的 @Value 注解外,SpringBoot 还提供了一种更加方便的方式:@ConfigurationProperties...注解是写在类定义的上方,而第三方开发的bean源代码不是你自己书写的,也不可能到源代码中去添加@ConfigurationProperties注解,这种问题该怎么解决呢?...使用@ConfigurationProperties注解其实可以为第三方bean加载属性,格式特殊一点而已。...@EnableConfigurationProperties 我们定义bean不是通过类注解定义就是通过@Bean定义,使用@ConfigurationProperties注解可以为bean进行属性绑定...,那在一个业务系统中,哪些bean通过注解@ConfigurationProperties去绑定属性了 了呢?

17850

springBoot读取配置文件的注解@ConfigurationProperties及与@Value区别

文章目录 1.如何使用@ConfigurationProperties 2.配置Annotation Processor 3.通过@Value注解实现 4....@Configuration与@Value对比 在sprigboot中,处理配置文件最好的方法是采用@ConfigurationProperties注解。...2.配置Annotation Processor 在使用了ConfigurationProperties注解之后,需要注意的是,当我们在idea中打开Person类,会出现红色的提示“SpringBoot...3.通过@Value注解实现 如果我们不采用@ConfigurationProperties,那么我们仍然能够通过@Value注解来实现上述功能。但是@value比较复杂,需要在每个属性上面去指定。...@Configuration与@Value对比 这两个注解的主要区别见下表: 区别项 @ConfigurationProperties @Value 功能说明 能够批量将配置文件中的属性进行注入 只能按当个属性进行注入

1.7K30

Spring Boot中注解@ConfigurationProperties的三种使用场景

在Spring Boot中注解@ConfigurationProperties有三种使用场景,而通常情况下我们使用的最多的只是其中的一种场景。本篇文章带大家了解一下三种场景的使用情况。...场景一 使用@ConfigurationProperties和@Component注解到bean定义类上,这里@Component代指同一类实例化Bean的注解。...场景二 使用@ConfigurationProperties和@Bean注解在配置类的Bean定义方法上。...@Configuration注解的配置类中通过@Bean注解在某个方法上将方法返回的对象定义为一个Bean,并使用配置文件中相应的属性初始化该Bean的属性。...场景三 使用@ConfigurationProperties注解到普通类,然后再通过@EnableConfigurationProperties定义为Bean。

2K10

@ConfigurationProperties解读

@ConfigurationProperties当想需要获取到配置文件数据时,除了可以用 Spring 自带的 @Value 注解外,SpringBoot 还提供了一种更加方便的方式:@ConfigurationProperties...注解是写在类定义的上方,而第三方开发的bean源代码不是你自己书写的,也不可能到源代码中去添加@ConfigurationProperties注解,这种问题该怎么解决呢?...使用@ConfigurationProperties注解其实可以为第三方bean加载属性,格式特殊一点而已。...@EnableConfigurationProperties我们定义bean不是通过类注解定义就是通过@Bean定义,使用@ConfigurationProperties注解可以为bean进行属性绑定,...那在一个业务系统中,哪些bean通过注解@ConfigurationProperties去绑定属性了 了呢?

22611

@ConfigurationProperties的作用

我们想把配置文件的信息,读取并自动封装成实体类,这样子,我们在代码里面使用就轻松方便多了,这时候,我们就可以使用@ConfigurationProperties,它可以把同类的配置信息自动封装成实体类...admin password : kyjufskifas2jsfs remoteAddress : 192.168.1.1 这时候我们可以定义一个实体类在装载配置文件信息 @Component @ConfigurationProperties...} public void setPassword(String password) { this.password = password; } } 我们还可以把@ConfigurationProperties...还可以直接定义在@bean的注解上,这是bean实体类就不用@Component和@ConfigurationProperties了 @SpringBootApplication public class...@Bean @ConfigurationProperties(prefix = "connection") public ConnectionSettings connectionSettings

1.1K20

@ConfigurationProperties的作用

我们想把配置文件的信息,读取并自动封装成实体类,这样子,我们在代码里面使用就轻松方便多了,这时候,我们就可以使用@ConfigurationProperties,它可以把同类的配置信息自动封装成实体类...admin password : kyjufskifas2jsfs remoteAddress : 192.168.1.1 这时候我们可以定义一个实体类在装载配置文件信息 @Component @ConfigurationProperties...public void setPassword(String password) { this.password = password; } } 我们还可以把@ConfigurationProperties...还可以直接定义在@bean的注解上,这是bean实体类就不用@Component和@ConfigurationProperties了 @SpringBootApplication public class...@Bean @ConfigurationProperties(prefix = "connection") public ConnectionSettings connectionSettings

2.1K40

@ConfigurationProperties工作原理

一、使用方式 @ConfigurationProperties是springboot框架中一个比较重要的注解,和@EnableConfigurationProperties一起使用,用于将配置属性绑定到...属性绑定能力的开启是@EnableConfigurationProperties注解,我们就从@EnableConfigurationProperties注解开始分析属性绑定的工作原理。...value数组,然后调用ConfigurationPropertiesBeanRegistrar实例的register方法注册ConfigurationProperties注解的相关BeanDefination...解析ConfigurationProperties注解相关属性,然后进行相关BeanDefination注册,调用内部方法registerBeanDefinition: private void registerBeanDefinition...这里细心的小伙伴可以发现,有一个可以优化的地方,前边先寻找工厂方法,然后检查是否需要绑定,如果前边执行过了,但是没有解析到ConfigurationProperties注解,这里就返回了,前边的调用就是无用功

27030

你应该知道的 @ConfigurationProperties 注解的使用姿势,这一篇就够了

注解,我们可以方便的获取这些参数值 使用 @ConfigurationProperties 配置模块 假设我们正在搭建一个发送邮件的模块。...总结 Spring Boot 的 @ConfigurationProperties 注解在绑定类型安全的 Java Bean 时是非常强大的,我们可以配合其注解属性和 @DeprecatedConfigurationProperty...附加说明 以为 @ConfigurationProperties 注解满足我们的全部需要了吗?其实不然,Spring 官网明确给出了该注解和 @Value 注解的对比: ?...如果使用 SpEL 表达式,我们只能选择 @Value 注解 另外我之前在阅读 RabbitMQ 源码时,发现 RabbitProperties 类充分的利用了 @ConfigurationProperties...技术也一样,各种框架的源码就是学生时代的古诗词和文言文,我们要多多查看阅读,甚至背诵编程思想,这样就可以写出越来越优雅的代码 关于 @ConfigurationProperties 注解的使用,这里推荐

1.3K10

@ConfigurationProperties和@Value 注入

我这里使用的Spring Boot 2.0.1 版本 配置文件是 yml 格式文件 @ConfigurationProperties 在yml配置文件中: ? 在实体类中: ?...重点是实体类上的两个注解: @Component @ConfigurationProperties(prefix = "jiang") :  这个注解的作用就是将一个实体类的属性和一个配置文件绑定一起,...我们可以通过修改配置文件的值来控制这个实体类的属性值 这两个注解见名知意 使用Test测试: ?...在这里People不可以使用@Value注解注入 ? 这就是两种常用的自定义属性注入方式。...还有一些其他的注解: @ImportResource可以导入xml配置文件, @PropertySource可以给配置类导入properties配置文件,通常和@Value一起用 ... ...

1.2K40

你应该知道的 @ConfigurationProperties 注解的使用姿势,这一篇就够了

注解,我们可以方便的获取这些参数值 使用 @ConfigurationProperties 配置模块 假设我们正在搭建一个发送邮件的模块。...总结 Spring Boot 的 @ConfigurationProperties 注解在绑定类型安全的 Java Bean 时是非常强大的,我们可以配合其注解属性和 @DeprecatedConfigurationProperty...附加说明 以为 @ConfigurationProperties 注解满足我们的全部需要了吗?其实不然,Spring 官网明确给出了该注解和 @Value 注解的对比: ?...如果使用 SpEL 表达式,我们只能选择 @Value 注解 另外我之前在阅读 RabbitMQ 源码时,发现 RabbitProperties 类充分的利用了 @ConfigurationProperties...技术也一样,各种框架的源码就是学生时代的古诗词和文言文,我们要多多查看阅读,甚至背诵编程思想,这样就可以写出越来越优雅的代码 关于 @ConfigurationProperties 注解的使用,这里推荐

7.2K30
领券