spring boot
在本教程中,我们将看一下Spring Boot,看看它与Spring框架有何不同。 我们还将讨论Spring Boot提供的各种功能。
什么是Spring Boot?
在开发企业级应用程序时,Spring是一个强大的框架。 它为我们提供了诸如依赖注入之类的功能,并支持许多其他框架扩展。
尽管如此,仍然涉及许多配置和样板代码。 例如,对于每个Spring MVC应用程序,我们将配置DispatcherServlet , InternalResourceViewResolver和许多其他组件。
Spring Boot是对Spring框架的扩展,使我们能够快速引导生产就绪的Spring应用程序。
它非常强大,并提供了广泛的功能。
SpringInitializr:
我们可以使用Spring Initializr网站快速下载具有所需依赖项的Spring Boot应用程序模板:
在依赖关系部分,我们可以添加应用程序所需的Spring Boot启动程序依赖关系。 例如,如果我们正在开发Web应用程序,则可以搜索并包含Spring Web Starter 。
所有Spring Boot应用程序的POM文件中都有一个父节:
< parent >
< groupId >org.springframework.boot</ groupId >
< artifactId >spring-boot-starter-parent</ artifactId >
< version >2.1.7.RELEASE</ version >
< relativePath />
</ parent >
父POM一次管理所有子依赖项的版本。 因此,我们可以为每个子依赖项省略版本标签。 它还定义了几个插件的默认配置。
Spring Boot Starter依赖关系:
Spring Boot提供的一些最受欢迎和最常见的入门包是:
- spring-boot-starter:核心启动器,包括自动配置支持,日志记录,YAML支持等。
- spring-boot-starter-test:包括对测试框架的支持,例如Junit,Spring Test,Mockito,Hamcrest
- spring-boot-starter-web:提供对Spring MVC的支持; 有助于RESTful Web开发
- spring-boot-starter-jpa:支持Spring Data JPA和Hibernate
- spring-boot-starter-security:具有Spring Security的依赖项
Spring Boot CLI:
除了使用Spring Initializr ,我们还可以使用Spring Boot CLI生成应用程序:
$spring init --dependencies=data-jpa,web sampleapplication
它将在当前目录中生成一个具有Spring Data JPA Starter和Spring Web Starter依赖项的项目。
Spring Boot自动配置:
借助自动配置功能,Spring Boot扫描了我们的类路径中存在的所有jar,并为我们自动配置了很多东西。 这是一个非常有用的功能,可以大大减少开发工作。
我们可以使用@EnableAutoConfiguration或@SpringBootApplication批注来启用自动配置。 @SpringBootApplication批注将@ ComponentScan , @ SpringBootConfiguration和@EnableAutoConfiguration一起分组。
我们的Spring Boot应用程序的主类类似于:
@SpringBootApplication
public class SampleApplication {
public static void main(String args[]) {
SpringApplication.run(SampleApplication. class , args);
}
}
我们可以通过更新app.properties来生成自动配置报告,以查看针对Spring Boot应用程序进行了自动配置的所有内容:
logging.level.org.springframework: DEBUG
或者只是使用–debug开关运行我们的应用程序。
嵌入式服务器:
Spring Boot提供了一个嵌入式服务器,因此应用程序是独立的,并且非常容易运行。
在mvn install上,将在我们的目标文件夹中生成一个可运行的jar。 我们需要做的就是执行该jar程序,以使我们的应用程序启动并运行:
java -jar SampleApplication- 1.0 .jar
Tomcat是Spring Boot应用程序的默认服务器,但是我们可以更改此配置。
Spring Boot属性:
有很多现成的可以使用的Spring Boot属性可以直接添加到application.properties中。 例如,要排除几个类的自动配置,我们将有:
spring.autoconfigure.exclude= # Auto-configuration classes to exclude
我们可以阅读Spring Boot文档来探索可用的选项。
Spring Boot配置文件:
对于任何企业应用程序,我们通常具有各种部署环境:开发,UAT和生产。 这些环境中的每一个极有可能具有一些特定于环境的配置。
Spring Boot在Spring配置文件配置中添加了一些附加功能。 我们可以在application.properties中定义活动配置文件:
#Defines active profile
spring.profiles.active= dev
另外,我们可以具有特定于应用程序的属性文件: applications- {profile} .properties 。
结论:
在本教程中,我们探讨了Spring Boot的各种功能以及它如何帮助我们进行RAPID应用程序开发。
翻译自: https://www.javacodegeeks.com/2019/09/introduction-spring-boot.html
spring boot