2021-05-24
Posted 如何在3年拿到50K
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了2021-05-24相关的知识,希望对你有一定的参考价值。
一、说明
springboot starter是springboot的四大特性之一,他将常用的依赖分组进行了整合,将其合并到一个依赖中,这样就可以一次性添加到项目的构建中;
理解stater并熟练应用是掌握spring框架的基本功之一。
二、条件
starter其实本质上是一个空的jar包,仅仅用来提供整合的maven依赖,告诉你启动一个项目需要什么模块。starter理应简洁明了,不要包含过多的功能和非必要的依赖。
一个自定义的starter推荐包含两个模块
- autoconfigure自动配置模块,用来定义自动配置代码
- starter模块整合了所有业务模块的maven依赖配置
如果模块较小可以把autofigure和starter放在一起,但官方推荐方式是分别构建两个modules,在starter引入autoconfigure
参考官方实例
https://github.com/snicoll/spring-boot-master-auto-configuration
三、开始自定义starter
3.1 命名规则
xxxx就是模块名称,千万不要以spring-boot
开头,这是官方的starter命名规则。
xxxx-spring-boot-starter
3.2 读取配置
给自己的配置属性独特前缀比如acme
,避免和官方前缀冲突
@ConfigurationProperties("acme")
public class AcmeProperties {
/**
* Whether to check the location of acme resources.
*/
private boolean checkLocation = true;
/**
* Timeout for establishing a connection to the acme server.
*/
private Duration loginTimeout = Duration.ofSeconds(3);
// getters & setters
}
项目结构
和上一篇spring autofigure结合起来,发现starter可能只有一个pom文件管理依赖,自动配置交给自动配置工程。这种方式是比较推荐的方式,也体现了spring对于starter定位。
以上是关于2021-05-24的主要内容,如果未能解决你的问题,请参考以下文章
《安富莱嵌入式周报》第214期:2021.05.24--2021.05.30