面试官:知道 springboot 的启动原理吗?( 四 )


都要归功于下面这个方法:
// 这一行回去加载 springboot 指定的文件List<String> configurations = getCandidateConfigurations(annotationMetadata, attributes);这里实际上回去解析一个文件:
Enumeration<URL> urls = classLoader != null ? classLoader.getResources("META-INF/spring.factories") : ClassLoader.getSystemResources("META-INF/spring.factories");这也就是我们在开发自己的 springboot-starter 时,为什么需要把自己的启动类放在 META-INF/spring.factories 文件中的原因,这样就可以被 springboot 加载,并且生效了 。
推荐阅读:

Spring Boot-11-自定义 springboot starter
小结到这里,springboot 的启动原理就讲解的差不多了 。
springboot 和以前的 spring xml 配置相比较,确实简化了太多太多 。
让我们可以更加快速,正确的启动一个 java web 程序 。
未来的发展历程也必然是这样,谁更加简单便捷,谁能提升效率,就是谁的天下 。这就是老马的效率第一定律 。
希望本文对你有帮助,如果有其他想法的话,也可以评论区和大家分享哦 。
各位极客的点赞收藏转发,是老马持续写作的最大动力!
期待与你的下次重逢 。




推荐阅读