首页 > 技术文章 > Spring

StarkBrothers 2019-12-18 19:08 原文

1、应用中提供一个main方法是为了给java一个执行的起点,调用SpringApplication的静态方法run,并传入一个被【Configuration】注解的方法,是为了给Spring一个执行的起点。

Spring的这个起点类本身没什么作用,但它提供了一个要加载的类路径,这个路径下的所有被【Configuration】注解的类都会被加载,从而将应用加载起来,形成一个通过注解配置的应用上下文【AnnotationConfigApplicationContext】。这也就意味着给SpringApplication.run方法传入的类参数只要被【Configuration】注解即可,而不必须是main方法所在的类。

2、这是针对当前应用,那引用的其它jar包的配置类是如何加载的呢?SpringBoot约定好了会去每个包下寻找是否存在【\META-INF\spring.factories】文件,如果存在则会将该文件中存在的配置类进行加载。

推荐阅读