携手创作,共同成长!这是我参与「掘金日新计划 · 8 月更文挑战」的第6天,点击查看活动详情
前言
我们在开发过程中通常都会用各种带有starter的Jar包,比如spring-boot-starter、spring-boot-starter-data-redis、spring-boot-starter-security 等很多jar… 前面通过对Spring Boot自动装配的源码分析,我们知道是通过@EnableAutoConfiguration自动装配的注解,通过去缓存或者通过SpringFactoriesLoader去扫描META-INF/spring.factories文件,将文件里面的Bean加载到Spring的bean容器里面去,具体原理可以看juejin.cn/post/711801… Spring boot 到底是如何实现自动装配的
具体实现
创建项目
首先我们自己创建一个工程,就拿我创建的这个工程为例,首先我们创建的是Spring Boot项目。
引入jar包
我们就要引入
<!-- SpringBoot 依赖配置 -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-dependencies</artifactId>
<version>2.2.6.RELEASE</version>
<type>pom</type>
<scope>import</scope>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter</artifactId>
<version>2.2.6.RELEASE</version>
</dependency>
自定义配置类
创建factories
在resource目录下创建META-INF/spring.factories文件,并将需要提供类的全路径写入
Package打包
通过Maven点击package打包将项目打成jar包,会生成在我们的maven本地仓库。
项目引入
通过在项目中引入前面打好的jar包,groupId、artifactId、version,将Lxlxxx-auth引入项目中
可以通过注入Bean来调用方法,因为LxlxxxAuthApplication配置的是Configuration所以项目在启动的时候就会调用AuthApplicationTest打印输出