0
点赞
收藏
分享

微信扫一扫

自己编写SpringBootStarter

早安地球 2022-03-19 阅读 31
spring boot

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指令

 

举报

相关推荐

0 条评论