java开发所有配置_Java开发必备之配置类总结

Java开发必备之配置类总结

在我们开发中,有两种非常常见的配置类配置的方式

不过呢,在此之前我带你认识一下一些注解:

认识:

1.@ConfigurationProperties 是什么呢?

@ConfigurationProperties 是 Spring Boot 中的标签,它可以让开发者将整个配置文件,映射到对象中,比@Value 效率更高。

@ConfigurationProperties注解的作用是配置属性。可以根据配置文件中的配置内容直接赋值到对象属性。

如:

写法: @ConfigurationProperties(prefix="从yml配置文件获取的配置内容")

f6315f82ac0516b322cb60566280cdaa.png

yml: (内容获取处)

2fa0826d141205983b50e8016bf2fb48.png

@ConfigurationProperties 能支持 properties 文件和 yml 文件,并且支持更复杂配置结构以及 Validation 功能。

2. @ConfigurationProperties注解与@Value注解区别 ?

这两个注解都能注入属性的值,那么这两个注解的区别是什么?

@ConfigurationProperties能够批量注入配置文件的属性。

@ConfigurationProperties支持松散绑定。

@ConfigurationProperties(prefix = "person"),只需要指定一个前缀,就能绑定有这个前缀的所有属性值。

@Value不支持复杂类型封装注解。

@Value只能一个个指定。

使用Spring的底层注解@Value注入属性的值。

3.@Component

开发中难免会遇到这个这个注解@Component ,可以说一个非常常见的注解

@Componet是Spring里的通用注解,用于声明bean,可以配置任意组件

泛指各种组件,就是说当我们的类不属于各种归类的时候(不属于@Controller、@Services等的时候),我们就可以使用@Component来标注这个类。

4.@EnableConfigurationProperties

@EnableConfigurationProperties的作用是开启@ConfigurationProperties。

使已有的 @ConfigurationProperties 注解的类生效。

现在让我们开始来说说配置类配置的两种方式

方式一: 自动加载配置类

将配置类交于spring容器,其他地方直接注入即可。

配置类:

2472e4513ea912eb2bd9e21476051f4d.png

配置类中使用 @Component和@ConfigurationPropertie  注解

直接将配置交于Spring容器,自动加载配置类

yml文件:

7c2a0e0a419252bf17bdea2b57ba55a5.png

如何使用?

使用配置类

9f9dd9f50aeb88e3b2fd853e21a5155c.png

直接使用@Resource注入即可使用

方式二:  手动加载配置类

配置类仅确定配置信息,使用手动加载配置类

配置类:

f50d3aa7467e36914e6c9d3cc283cf16.png

其中只用了@ConfigurationProperties  注解

如何使用?

使用配置类

4bb9e4ad1b9816e17a7a7875b0615523.png

其中就用到了我最开始介绍的注解@EnableConfigurationProperties

@EnableConfigurationProperties的作用就是开启@ConfigurationProperties。

使已有的 @ConfigurationProperties 注解的类生效即可进行@Resource注入使用

总结:

总的来说如果在配置类只配置@ConfigurationProperties注解,而没有使用@Component(  @Compent的作用是对spring说,我是一个bean,你现在要来管理我)如果没有使用@Component,  那么在IOC容器中是获取不到properties 配置文件转化的bean。说到底 @EnableConfigurationProperties 相当于把@ConfigurationProperties 的类进行了一次注入,在开发中两种方式可二选一, 效果都是一样的噢!

请给努力中的自己点个赞哦!

每天进步一点点`~~~~~

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值