Spring引导如何提供依赖关系和配置?

时间:2015-10-07 07:30:28

标签: java spring maven spring-boot

我理解Spring启动的概念,但我正在寻找逻辑如何实现以及它在哪里维护配置。当我们立即添加任何Starter-pom时,它会提供它所需的依赖关系和配置。它是如何自动化该功能的,以及在弹簧启动时自动执行代码的位置在哪里?

提前致谢

3 个答案:

答案 0 :(得分:0)

Spring Boot的配置类位于模块spring-boot-autoconfigure中。启动器POM依赖于它(通过通用spring-boot-starter模块)和所需的第三方库,然后激活该库的自动配置。

答案 1 :(得分:0)

SpringBoot项目已经放在那里,以提高工作效率。立即构建生产就绪应用程序。 SpringBoot项目引用了许多启动项目,如spring-boot-starter-jdbc,spring-boot-starter-logging等。所有这些启动库都像maven子模块项目,它们依次为各个项目添加一组库。像spring-boot-starter-jdbc库一样添加这些库 - > spring-jdbc,spring-tx,tomcat-jdbc
现在对于配置部分,spring boot维护了另一个名为spring-boot-autoconfigure的库,它根据pom上的库以及应用程序上使用的初始配置注释集自动配置所有需要的配置。对于Eg。如果它看到你的pom中存在ojdbc jar,那么它会自动将oracle数据源配置到你的项目中

答案 2 :(得分:0)

根据我的理解,Spring Boot不提供此功能。这是Maven的力量。 Maven允许您声明依赖项,依赖项本身 PLUS传递依赖项将被检索。

starter POM只是普通的Maven POM类型工件,它声明了必要的依赖关系,因此,当您在自己的POM中包含时,将下载相关的依赖项。

您可以通过Maven SiteMaven Guide by Sonatype

对Maven有更多了解