通过注解实现自定义Spring Boot Starter自动装配

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了通过注解实现自定义Spring Boot Starter自动装配相关的知识,希望对你有一定的参考价值。

参考技术A

以Spring boot 作为微服务开发的项目中会用到很多第三方,或者自建的一些依赖SDK,例如 分布式锁、文件管理、数据库连接、统一错误拦截等组件。为了达到通用的目的,都会创建自定义的spring boot stater 组件。以下介绍创建步骤:

一、创建Maven测试项目test-starter pom文件如下:

二、创建自动装配类TestServiceConfiguration.java

三、创建配置类TestServiceProperties.java

四、创建提供服务的接口TestService.java

五、创建TestService的实现类型TestServiceImpl.java

六、创建自定义注解@EnableTest

通过以上步骤就实现了自定义Spring boot starter test-spring-boot-starter 组件,下面创建测试项目去调用这个starter组件。

创建starter组件使用项目

一、创建maven测试项目test-service,pom文件如下

二、创建启动类Application.java

三、创建配置文件application.yml

四、创建测试类TestController.java

到这里整个自定义spring boot starter 创建就完成了,同时也依赖到项目中进行使用了。

项目代码:starter-test: 自定义starter组件

Spring Boot 自动装配定义与自定义starter原理,及如何实现自定义装配

前言

Spring Boot 自动装配定义与自定义starter,基于约定大于配置的原则,实现Spring组件自动装配的目的。

 

装配的依赖(方式)

 

模式注解、@Enable模块、条件装配、工厂加载机制。

激活自动化装配、实现自动化装配、配置自动装配实现。

底层装配技术

  1. Spring 模式注解装配
  2. Spring @Enable模块装配
  3. Spring条件装配
  4. Spring工厂加载机制
  • 实现类: SpringFactoriesLoader
  • 配置资源:META-I

以上是关于通过注解实现自定义Spring Boot Starter自动装配的主要内容,如果未能解决你的问题,请参考以下文章

Spring boot 使用@Endpoint注解自定义端点, 不能通过 Restfult 访问问题 原因分析

Spring boot 使用@Endpoint注解自定义端点, 不能通过 Restfult 访问问题 原因分析

Spring boot 使用@Endpoint注解自定义端点, 不能通过 Restfult 访问问题 原因分析

Spring Boot 自定义注解支持EL表达式(基于 MethodBasedEvaluationContext 实现)

大聪明教你学Java | Spring Boot 使用自定义注解实现操作日志的记录

spring boot可以自定义properties吗