一个工作了3年的Java程序员,遇到一个Spring Boot的问题。

他对这个问题有一些理解,然而答复得不是很好,心愿参考我的高手答复。

这个问题是:“如何了解Spring Boot中的Starter”。

对于这个问题,看看普通人和高手的答复。

普通人:

嗯。。。。。。。。。。。。。

高手:

Starter是Spring Boot的四大外围性能个性之一,除此之外,Spring Boot还有主动拆卸、Actuator监控等个性。

Spring Boot外面的这些个性,都是为了让开发者在开发基于Spring生态下的企业级利用时,只须要关怀业务逻辑,

缩小对配置和外部环境的依赖。

其中,Starter是启动依赖,它的次要作用有几个。

  1. Starter组件以性能为纬度,来保护对应的jar包的版本依赖,

    使得开发者能够不须要去关怀这些版本抵触这种容易出错的细节。

  2. Starter组件会把对应性能的所有jar包依赖全副导入进来,防止了开发者本人去引入依赖带来的麻烦。
  3. Starter外部集成了主动拆卸的机制,也就说在程序中依赖对应的starter组件当前,

    这个组件主动会集成到Spring生态下,并且对于相干Bean的治理,也是基于主动拆卸机制来实现。

  4. 依赖Starter组件后,这个组件对应的性能所须要保护的内部化配置,会主动集成到Spring Boot外面,

    咱们只须要在application.properties文件外面进行保护就行了,比方Redis这个starter,只须要在application.properties

    文件外面增加redis的连贯信息就能够间接应用了。

在我看来,Starter组件简直完满的体现了Spring Boot外面约定优于配置的理念。

另外,Spring Boot官网提供了很多的Starter组件,比方Redis、JPA、MongoDB等等。

然而官网并不一定保护了所有中间件的Starter,所以对于不存在的Starter,第三方组件个别会本人去保护一个。

官网的starter和第三方的starter组件,最大的区别在于命名上。

官网保护的starter的以spring-boot-starter结尾的前缀。

第三方保护的starter是以spring-boot-starter结尾的后缀

这也是一种约定优于配置的体现。

以上就是我对这个问题的了解。

总结

在技术的学习过程中,我认为“为什么是” 比 “是什么”要重要。

以这种形式来学习,带来的益处就是对技术了解会更加粗浅。

这道题考查的就是“为什么是”,不难,关键在于本人的了解。

如果你喜爱这篇文章,记得点赞和珍藏。

如果想取得一对一的面试领导以及面试材料,能够私信我。

版权申明:本博客所有文章除特地申明外,均采纳 CC BY-NC-SA 4.0 许可协定。转载请注明来自 Mic带你学架构
如果本篇文章对您有帮忙,还请帮忙点个关注和赞,您的保持是我一直创作的能源。欢送关注同名微信公众号获取更多技术干货!