一位工作了3年的Java程序员遇到了一个SpringBoot的问题。他对这个问题有一些了解,但是回答的不是很好,希望参考我的高手回答。本题为:《如何理解SpringBoot中的Starter》。对于这个问题,看看普通人和专家的回答。普通人:嗯。............Master:Starter是SpringBoot的四大核心功能特性之一。此外,SpringBoot还具有自动装配、Actuator监控等特性。SpringBoot的这些特性旨在让开发者在基于Spring生态系统开发企业级应用时,只关心业务逻辑,减少对配置和外部环境的依赖。其中Starter是启动依赖,主要有几个功能。Starter组件以函数为纬度维护对应jar包的版本依赖,开发者无需关心这些版本冲突的易错细节。Starter组件会导入对应功能的所有jar包依赖,避免了开发者自己引入依赖带来的麻烦。Starter内部集成了自动组装机制,也就是说程序依赖了相应的starter组件后,这个组件会自动集成到Spring生态中,相关bean的管理也是基于自动组装机制完成的。依赖Starter组件后,该组件对应功能需要维护的外部配置会自动集成到SpringBoot中。我们只需要在application.properties文件中维护即可。例如,启动器Redis只需要在应用程序中。在properties文件中添加redis的连接信息,就可以直接使用了。在我看来,Starter组件几乎完美地体现了SpringBoot中约定优于配置的理念。另外,SpringBoot官方提供了很多Starter组件,比如Redis、JPA、MongoDB等。但是官方不一定会维护所有的中间件starter,所以对于不存在的starter,第三方组件一般会自己维护一个。官方启动器和第三方启动器组件最大的区别就是命名。官方维护的starter前缀都是spring-boot-starter开头的。第三方维护的starter是以spring-boot-starter结尾的后缀,这也是约定优于配置的一种体现。以上是我对这个问题的理解。总结在学习技术的过程中,我觉得“为什么”比“是什么”更重要。这样学习的好处是你会对技术有更深的理解。这道题考察“whyis”,不难,关键在于你自己的理解。如果你喜欢这篇文章,记得点赞和收藏。想领取一对一面试指导和面试资料的可以私信我。版权声明:除特别声明外,本博客所有文章均采用CCBY-NC-SA4.0许可协议。转载请注明来自Mic带你学建筑!如果本文对您有帮助,请给个关注和点赞。您的坚持是我不断创作的动力。欢迎关注同名微信公众号获取更多技术干货!
