首页>>后端>>Spring->SpringBoot?

SpringBoot?

时间:2023-12-01 本站 点击:0

Springboot简介

     Springboot可以简化spring应用程序的创建和开发过程,也可以说Springboot可以大大简化之前SSM(SpringMVC+Spring+Mybatis)的框架进行开发的过程。它可以省去之前繁琐的编辑配置文件的过程,采用 大量的默认配置 来简化开发过程。

    正因为上述的优点,Springboot可以非常容易和快速地创建基于Spring框架的应用程序,使得编码、配置、部署和监控都变得简单了,因此它在业界备受关注。

2.1、能够快速创建基于Spring的程序

2.2    能够直接使用java main方法启动内嵌的Tomcat服务器运行Springboot程序,不需要部署war文件

2.3   提供约定的starter POM来简化Maven配置,使得这个过程更加简单

2.4   自动化配置,根据项目的Maven依赖配置,springboot可以自动配置Spring、SpringMVC等等

2.5  提供了程序的健康检查功能

2.6  基本可以完全不使用XML配置文件,采用注解来配置

3.1  自动配置

3.2  起步依赖

什么是Spring Boot?

Spring Boot 可以轻松创建独立的、生产级的基于 Spring 的应用程序,您可以“直接运行”这些应用程序。

我们对 Spring 平台和第三方库采取了固执的观点,因此您可以轻松上手。大多数 Spring Boot 应用程序需要最少的 Spring 配置。

Spring中国教育管理中心

特征

创建独立的 Spring 应用程序

直接嵌入Tomcat、Jetty或Undertow(无需部署WAR文件)

提供自以为是的“入门”依赖项以简化您的构建配置

尽可能自动配置 Spring 和 3rd 方库

提供生产就绪功能,例如指标、运行状况检查和外部化配置

完全不需要代码生成,也不需要 XML 配置

了解更多,可查询Spring中国教育管理中心相关信息

SpringBoot常见概念

SpringBoot 是一个为了简化Java应用环境搭建和开发过程的一个框架。它比较方便的就是自动配置,不需要XML配置,在主配置类上打一个@SpringBootApplication标签就可以实现自动配置。SpringBoot还简化了Maven的配置,导入SpringBoot的starter架包就可以把对应的依赖包都导入到项目中,很方便,不用去考虑版本兼容。SpringBoot还内嵌了tomcat,可以以jar包的形式独立运行。它的缺点是,由于不用自己做配置,报错的时候很难去定位。

SpringBoot 实现自动配置主要是依靠@SpringBootApplication这个注解,在主配置类上打上@SpringBootApplication注解就能实现自动配置,这个注解里面主要包含了三个注解,分别是@SpringBootConfiguration标明这个类是一个配置类、@EnableAutoConfiguration实现自动配置、@ComponentScan扫描组件。@EnableAutoConfiguration的底层使用了一个@Import注解,引入了一个自动配置导入选择器AutoConfigurationImportSelector,这个类里面有一个getCandidateConfigurations方法,获取候选配置的方法,他会去当前类路径下获取autoconfiguration jar包下面的META-INF文件夹下面的Spring.factories文件并以一个ListString返回(完成自动配置bean),这里面放了大量的自动配置项。

application.yml(.properties)、bootstrap.yml(.properties)

实现接口ApplicationRunner或者CommandLineRunner,这两个接口实现方式一样,它们都只提供了一个run方法。

Spring Boot支持Java Util Logging,Log4j2,Logback作为日志框架,如果你使用starters启动器,Spring Boot将使用Logback作为默认日志框架。无论使用哪种日志框架,Spring Boot都支持配置将日志输出到控制台或者文件中。

默认使用Logback作为日志框架,往资源目录下创建一个logback-spring.xml即可

可以兼容,使用 @ImportResource 注解导入老 Spring 项目配置文件。

spring和spring boot区别是什么?

spring和spring boot区别如下:

1、Spring框架:

就像一个家族有众多衍生产品例如boot、security、jpa等等但他们的基础都是Spring的ioc和aopioc提供了依赖注入的容器aop解决了面向横切面的编程然后在此两者的基础上实现了其他延伸产品的高级功能。

2、spring boot:

是基于Servlet的一个MVC框架主要解决WEB开发的问题因为Spring的配置非常复杂各种XML、JavaConfig、hin处理起来比较繁琐于是为了简化开发者的使用,从而创造性地推出了Springboot,约定优于配置简化了spring的配置流程。

spring短语搭配:

Leaf Spring 钢板弹簧 ; 叶片弹簧 ; [机] 板弹簧 ; [机] 片簧

Early Spring 早春图 ; 早春 ; 早春二月 ; 烟花三月

Spring rolls 春卷 ; 脆皮春卷 ; 第三道春卷 ; 秋卷

Silent Spring 寂静的春天 ; 沉寂的春天 ; 无声的春天 ; 沉静的春天

Air Spring [机] 空气弹簧 ; 气垫 ; 空翻 ; 春秋航空

SpringBoot学习总结

SpringBoot基于Spring,集成SpringBoot,不会对原有项目的SpringMvc,MyBatis等框架产生冲突。

Spring Boot 会选择最适合的 Spring 子项目和第三方开源库进行整合。大部分 Spring Boot 应用只需要非常少的配置就可以快速运行起来。

1.很多配置需要重新去学习

2.会引入很多关联的依赖,要注意版本冲突的问题,需要保证版本统一

运行SpringbootApplication类的main()方法即可,因为spring-boot-starter-web内置tomcat组件,所以不需要配置tomcat。

1.打包成Jar,使用jar –jar xxx.jar命令直接运行

2.打包成war,部署在外置的tomcat容器中

startApp.sh

Tomcat的配置放在application.properties或者application.yml中,示例application.yml中:

Spring Boot使用了一个全局的配置文件application.properties,放在src/main/resources目录下或者类路径的/config下。Sping Boot的全局配置文件的作用是对一些默认配置的配置值进行修改。

配置文件分为两种格式:yml格式、properties格式yml文件比properties文件更方便阅读和书写,推荐用yml格式;

区别:

Properties中spring.datasource.druid.minIdle=5

等同于yml文件中

spring:

datasource:

druid:

minldle: 5

yml的格式要求:

1.子属性前面要加两个空格

2.冒号后面要有一个空格

3.不要用TAB键进行缩进,否则解析yml文件时报错

默认情况下,application.properties和application.yml文件可以放在以下四个位置:

1.外置,在相对于应用程序运行目录的/congfig子目录里。

2.外置,在应用程序运行的目录里

3.内置,在config包内

4.内置,在Classpath根目录

这个列表按照优先级排序,也就是说,src/main/resources/config下application.properties覆盖src/main/resources下application.properties中相同的属性。

目前开发环境可以选择第四种,把application.properties放在src\main\resources目录下。

测试环境和生产环境的配置和应用分离,通过

命令可以加载配置文件,多个配置文件用逗号分离,例如:

或者:

应用启用时默认会加载application.properties文件。

读取属性的方式:

属性加载在bean中

使用属性

springboot启动流程

springboot启动流程如下:

启动流程主要分为三个部分,第一部分进行、SpringApplication的初始化模块,配置一些基本的环境变量、资源、构造器、监听器,第二部分实现了应用具体的启动方案,包括启动流程的监听模块、加载配置环境模块。

及核心的创建上下文环境模块,第三部分是自动化配置模块,该模块作为springboot自动配置核心,在后面的分析中会详细讨论。在下面的启动程序中我们会串联起结构中的主要功能。

启动过程主要做了以下几件事情:

配置属性、获取监听器,发布应用开始启动事件初、始化输入参数、配置环境,输出banner、创建上下文、预处理上下文、刷新上下文(加载tomcat容器)、再刷新上下文、发布应用已经启动事件、发布应用启动完成事件。

在SpringBoot中启动tomcat的工作在刷新上下这一步。

而tomcat的启动主要是实例化两个组件:Connector、Container,一个tomcat实例就是一个Server,一个Server包含多个Service,也就是多个应用程序,每个Service包含多个Connector和一个Container,而一个Container下又包含多个子容器。


本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:/Spring/5999.html