自己编写SpringBootStarter

Spring官方提供的starter名称为:spring-boot-starter-xxx

我们自己编写的start名字一般为xxx-spring-boot-starter

starter原理:

首先安装起步依赖

自动配置管理JavaBean,具体步骤如下:

1.基于java代码的Bean配置

2.自动配置条件依赖

自动配置条件依赖:

这些注解是springboot特有的,常见的条件依赖注解有:

注解功能说明
@ConditionalOnBean仅在当前上下文中存在某个bean时,才会实例化这个Bean
@ConditionalOnClass某个class位于类路径上,才会实例化这个Bean
@ConditionalOnExpression当表达式为true的时候,才会实例化这个Bean
@ConditionalOnMissingBean仅在当前上下文中不存在某个bean时,才会实例化这个Bean
@ConditionalOnMissingClass某个class在类路径上不存在的时候,才会实例化这个Bean
@ConditionalOnNotWebApplication不是web应用时才会实例化这个Bean
@AutoConfigureAfter在某个bean完成自动配置后实例化这个bean
@AutoConfigureBefore在某个bean完成自动配置前实例化这个bean

3.Bean参数获取

4.Bean的发现

我们需要从Spring Boot项目的启动类开始跟踪,在启动类上我们一般会加入SpringBootApplication注解 。

重点介绍如下三个注解:

SpringBootConfiguration:作用就相当于Configuration注解,被注解的类将成为一个bean配置类

ComponentScan:作用就是自动扫描并加载符合条件的组件,最终将这些bean加载到spring容器中

EnableAutoConfiguration :这个注解很重要,借助@Import的支持,收集和注册依赖包中相关的bean定义

5.Bean的加载

在Spring Boot应用中要让一个普通类交给Spring容器管理,通常有以下方法:

@Configuration@Bean这两个注解一起使用就可以创建一个基于java代码的配置类,可以用来替代传统的xml配置文件。

@Configuration 注解的类可以看作是能生产让Spring IoC容器管理的Bean实例的工厂。

@Bean 注解的方法返回的对象可以被注册到spring容器中。

 

具体自己编写的大体步骤:

第一步:创建starter工程hello-spring-boot-starter并配置pom.xml文件

第二步:创建配置属性类HelloProperties

第三步:创建服务类HelloService

第四步:创建自动配置类HelloServiceAutoConfiguration

第五步:在resources目录下创建META-INF/spring.factories

然后就可以将当前starter安装到本地maven仓库供其他应用来使用。点击maven的install指令

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值