SpringBoot资料合集-07【Spring Boot自定义starters】

一、简介

SpringBoot 最强大的功能就是把我们常用的场景抽取成了一个个starter(场景 启动器),我们通过引入springboot 为我提供的这些场景启动器,我们再进行 少量的配置就能使用相应的功能。即使是这样,springboot也不能囊括我们所 有的使用场景,往往我们需要自定义starter,来简化我们对springboot的使 用。

二、如何自定义starter

1.实例

如何编写自动配置 ?
我们参照@WebMvcAutoConfiguration为例,我们看看们需要准备哪些东 西,下面是WebMvcAutoConfiguration的部分代码:

1 @Configuration 
2 @ConditionalOnWebApplication 
3 @ConditionalOnClass({
   Servlet.class, DispatcherServlet.class, Web 
MvcConfigurerAdapter.class}) 
4 @ConditionalOnMissingBean({
   WebMvcConfigurationSupport.class}) 
5 @AutoConfigureOrder(2147483638) 
6 @AutoConfigureAfter({
   DispatcherServletAutoConfiguration.class, V 
alidationAutoConfiguration.class}) 
7 public class WebMvcAutoConfiguration {
    
8
9 @Import({
   WebMvcAutoConfiguration.EnableWebMvcConfiguration.clas 
s})
10 @EnableConfigurationProperties({
   WebMvcProperties.class, Resour 
ceProperties.class}) 
11 public static class WebMvcAutoConfigurationAdapter extends Web 
MvcConfigurerAdapter {
    
12
13 @Bean 
14 @ConditionalOnBean({
   View.class}) 
15 @ConditionalOnMissingBean 
16 public BeanNameViewResolver beanNameViewResolver() {
    
17 BeanNameViewResolver resolver = new BeanNameViewResolver(); 
18 resolver.setOrder(2147483637); 
19 return resolver; 
20 } 
21 } 
22 } 

我们可以抽取到我们自定义starter时同样需要的一些配置。

1 @Configuration //指定这个类是一个配置类 
2 @ConditionalOnXXX //指定条件成立的情况下自动配置类生效 
3 @AutoConfigureOrder //指定自动配置类的顺序 
4 @Bean //向容器中添加组件 
5 @ConfigurationProperties 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值