SpringBootApplication这个最基本的注释其实是由三个部分组成的

在很久很久以前,哈哈,a long story.

许多Spring Boot开发人员总是用@Configuration、@EnableAutoConfiguration和@ComponentScan来注释他们的主类。由于这些注释经常一起使用(特别是如果您遵循上面的最佳实践),SpringBoot提供了一个方便的@SpringBootApplication替代方案。

@SpringBootApplication注释等价于使用@Configuration、@EnableAutoConfiguration和@ComponentScan的默认属性:

SpringBootApplication这个最基本的注释其实是由三个部分组成的

以下是@SpringBootApplication注释中keyijieshou接受的参数:

Exclude:从自动配置中排除类列表。

excludeNames:从自动配置中排除完全限定类名的列表。这个参数是从spring boot 1.3.0开始添加的。

scanBasePackageClasses:提供必须应用于@ComponentScan的类的列表。

scanBasePackages:提供必须应用于@ComponentScan的包的列表。这个参数是从spring boot 1.3.0开始添加的。


说到这了,我们顺便来说一下application.properties文件。


与标准Spring框架相比,Spring Boot为我们提供的一个优势是"配置更少"。Spring Boot将其典型的"约定优于配置"的方法应用于属性文件。Spring boot引入了名为"application.properties"的默认应用程序配置属性文件。而且不需要任何基于spring的配置即可自动检测。我们需要把属性文件放置在maven项目的"src/main/resources"目录中。

通过使用这个默认文件,我们不必显式地注册PropertySource,甚至不必提供到属性文件的路径。

Spring boot在application.properties文件内指定了应用程序内部的各种常见默认属性,以此来支持日志,AOP,身份识别,Hibernat, JPA, JMX,电子邮件等属性。我们不需要在所有的情况下指定所有的默认属性。我们可以按需指定它们。这就是spring减少基于XML的配置并将其更改为简单属性的方式。

您可以在这里找到spring boot提供的所有默认属性。(不可以发链接,大家可以参考下面的地址)

https://docs.spring.io/spring-boot/docs/current/reference/html/common-application-properties.html


分享到:


相關文章: