Fork me on GitHub

Spring Boot

什么是SpringBoot

Spring Boot是由Pivotal团队提供的全新框架,其设计目的是用来简化Spring应用的初始搭建以及开发过程。该框架使用了特定的方式来进行配置,从而使开发人员不再需要定义样板化的配置。通过这种方式,Spring Boot致力于在蓬勃发展的快速应用开发领域(rapid application development)成为领导者。
spring大家都知道,boot是启动的意思。所以,spring boot其实就是一个启动spring项目的一个工具而已。从最根本上来讲,Spring Boot就是一些库的集合,它能够被任意项目的构建系统所使用。

SpringBoot有哪些优点?

 

独立运行

Spring Boot 内嵌了各种 servlet 容器,TomcatJetty 等,现在不再需要打成war 包部署到容器中,Spring Boot 只要打成一个可执行的 jar 包就能独立运行,所有的依赖包都在一个 jar 包内。

 

简化配置

spring-boot-starter-web 启动器自动依赖其他组件,少了 maven 的配置。

 

自动配置

Spring Boot 能根据当前路径下的类、jar 包来自动配置 bean,如添加一个 spring-boot-starter-web 启动器就能拥有 web 的功能,无需其他配置。

 

无代码生成和XML配置

Spring Boot 配置过程中无代码生成,也无需 XML 配置文件就能完成所有配置工作,这一切都是借助于条件注解完成的,这也是 Spring4.x 的核心功能之一。

 

避免大量的Maven导入和各种版本冲突

 

应用监控

Spring Boot 提供一系列端点可以监控服务及应用,做健康检测。

 

运行 SpringBoot 有哪几种方式?

 

打包用命令或者放到容器中运行

Maven/ Gradle 插件运行

直接执行 main 方法运行

1.8 SpringBoot 需要独立的容器运行吗?

 

可以不需要,内置了 Tomcat/ Jetty 等容器。

 

1.9 开启SpringBoot 特性有哪几种方式?

 

继承spring-boot-starter-parent项目

导入spring-boot-dependencies项目依赖

1.10 SpringBoot、Spring MVC和Spring有什么区别?

 

Spring

Spring最重要的特征是依赖注入。所有Spring Modules不是依赖注入就是IOC控制反转。

当我们恰当的使用DI或者是IOC的时候,可以开发松耦合应用。

 

Spring MVC

Spring MVC提供了一种分离式的方法来开发Web应用。通过运用像DispatcherServeletMoudlAndView ViewResolver 等一些简单的概念,开发 Web 应用将会变的非常简单。

 

SpringBoot

SpringSpring MVC的问题在于需要配置大量的参数。

SpringBoot通过一个自动配置和启动的项来解决这个问题。

SpringBoot 打成的jar和普通的jar有什么区别 ?

 

Spring boot 项目最终打包成的 jar 是可执行 jar ,这种 jar 可以直接通过 java -jar xxx.jar 命令来运行,这种 jar 不可以作为普通的 jar 被其他项目依赖,即使依赖了也无法使用其中的类。

 

SpringBoot jar 无法被其他项目依赖,主要还是他和普通 jar 的结构不同。普通的 jar 包,解压后直接就是包名,包里就是我们的代码,而 Spring Boot 打包成的可执行 jar 解压后,在 \BOOT-INF\classes 目录下才是我们的代码,因此无法被直接引用。如果非要引用,可以在 pom.xml 文件中增加配置,将 Spring Boot 项目打包成两个 jar ,一个可执行,一个可引用。

 

什么是自动配置?

Spring 查看(CLASSPATH 上可用的框架)已存在的应用程序的配置。在此基础上,Spring Boot 提供了配置应用程序和框架所需要的基本配置。这就是自动配置。

 

什么是 Spring Boot Stater ?

启动器是一套方便的依赖没描述符,它可以放在自己的程序中。你可以一站式的获取你所需要的 Spring 和相关技术,而不需要依赖描述符的通过示例代码搜索和复制黏贴的负载。

 

例如,如果你想使用 Sping 和 JPA 访问数据库,只需要你的项目包含 spring-boot-starter-data-jpa 依赖项,你就可以完美进行。

posted @ 2021-09-08 13:38  小小苹果树  阅读(53)  评论(0)    收藏  举报