SpringBoot

58 阅读3分钟

传统SSM的缺陷:

1.依赖很多-----容易起造成依赖冲突

2.配置繁琐

SpringBoot介绍:

1.是对于Spirng的深度封装,基于约定思想,底层还是Spirng的技术

2.必须按照它规定的方式去编写程序代码,无需再去编写一堆复杂配置

SpringBoot功能:

起步依赖:SpirngBoot以功能化的方式将需要的依赖进行组装

默认配置:实现大量依赖框架的默认配置项,无需自己配置

内置Tomcat : SpringBoot内置自带Tomcat,可直接运行

@SpringBootApplication //表示当前类是一个SpirngBoot的引导类
package com.itheima.boot;
​
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
​
@SpringBootApplication //表示当前类是一个SpirngBoot的引导类
public class QuckstartApplication {
    public static void main(String[] args) {
        //启动SpirngBoot应用
        SpringApplication.run(QuckstartApplication.class, args);
    }
}

1.我们的工程为什么要继承 spring-boot-starter-parent?

所有的SpringBoot应用都必须继承spring-boot-starter-parent 工程 一旦继承了,就可以获取父工程中的依赖、插件、版本等信息

2.我们的工程在引入 spring-boot-starter-web 依赖的时候,为什么没有指定版本?

版本锁定 : 继承了 spring-boot-starter-parent 父工程,它内部已经锁定了一些常见依赖的版本号,故而在我们自己开发的工程中无需再指定依赖的版本。

3.spring-boot-starter-web 是个啥,为什么引入了它之后,就不需要再引入我们原来做spring开发的那一堆包了?

起步依赖 : SpringBoot根据场景将各种依赖组装成了一个个的集合(starter),我们根据功能引入指定的starter即可。

4.我们的程序没有部署到tomcat,为什么就可以被访问?

内置Tomcat : SpringBoot在中引入一个内置的tomcat,故而我们无需再将程序部署到位置的tomcat中即可运行。

5.为什么我们访问程序的时候用的是8080端口,谁定义的?

默认配置 : SpringBoot的约定大于配置,即SpringBoot的大量配置都有默认值,如果我们不去写配置就使用默认的。 比如说:tomcat默认端口 8080 等等

YML:

yml: 一种序列化格式

加载顺序: properties>yml>yaml

Spring Boot 是一个用于开发生产级别的独立 Java 应用程序的框架。它基于 Spring 框架,并通过提供自动化配置、快速启动和简化开发流程的方式,让开发人员更加便捷地创建和部署应用程序。

以下是 Spring Boot 的一些特点和优势:

  1. 简化配置: Spring Boot 提供了自动化配置的功能,通过检测应用程序中使用的类和依赖,可以自动配置应用程序所需要的环境和组件,从而减少了繁琐的配置工作。
  2. 内嵌容器: Spring Boot 内置了多种容器(如 Tomcat、Jetty),可以选择其中一个来运行应用程序,而不需要手动配置和部署外部容器。
  3. 快速开发: Spring Boot 提供了很多开箱即用的特性和组件,比如自动整合常用的数据库、消息队列、缓存等,能够大大加快应用程序的开发速度。
  4. 微服务支持: Spring Boot 有很好的支持微服务架构,可以快速构建独立的、基于 RESTful 的服务,并且可以通过 Spring Cloud 进行微服务治理和分布式系统的开发。
  5. 监控和管理: Spring Boot 通过集成 Actuator 组件,提供了对应用程序的监控和管理功能,可以展示应用程序的运行状况、性能指标和健康状态,并提供了一套 RESTful 接口用于管理应用程序。

总的来说,Spring Boot 提供了一种简化和快速开发的方式,使得开发人员能够更加专注于业务逻辑的实现,而不需要过多关注底层的配置和环境搭建。它是构建现代化的 Java 应用程序的理想选择,并且得到了广泛的应用和社区支持。