SpringBoot

lihuibear

代码:

lihuibear4/smm

SpringBoot简介

SpringBoot 是由 Pivotal 团队提供的全新框架,其设计目的是用来简化Spring 应用的初始搭建以及开发过程。

入门案例

image-20240308163915906

image-20240308163933589

image-20240308163952734

image-20240308164042002

Spring VS SpringBoot

image-20240308164228098

基于idea开发SpringBoot程序需要确保联网且能够加载到程序框架结构

SpringBoot项目快速启动

打包

由于我们在构建 SpringBoot 工程时已经在 pom.xml 中配置了如下插件

1
2
3
4
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>

所以我们只需要使用 Mavenpackage 指令打包就会在 target 目录下生成对应的 Jar 包。

注意:该插件必须配置,不然打好的 jar 包也是有问题的。

启动

进入 jar 包所在位置,在 命令提示符 中输入如下命令

1
jar -jar springboot_01_quickstart-0.0.1-SNAPSHOT.jar

执行上述命令就可以看到 SpringBoot 运行的日志信息

概述

SpringBoot 是由Pivotal团队提供的全新框架,其设计目的是用来简化Spring应用的初始搭建以及开发过程。

原始 Spring 环境搭建和开发存在以下问题:

  • 配置繁琐
  • 依赖设置繁琐

SpringBoot 程序优点恰巧就是针对 Spring 的缺点

  • 自动配置。这个是用来解决 Spring 程序配置繁琐的问题
  • 起步依赖。这个是用来解决 Spring 程序依赖设置繁琐的问题
  • 辅助功能(内置服务器,…)。我们在启动 SpringBoot 程序时既没有使用本地的 tomcat 也没有使用 tomcat 插件,而是使用 SpringBoot 内置的服务器。

起步依赖

起步依赖

starter

  • SpringBoot 中常见项目名称,定义了当前项目使用的所有项目坐标,以达到减少依赖配置的目的

parent

  • 所有 SpringBoot 项目要继承的项目,定义了若干个坐标版本号(依赖管理,而非依赖),以达到减少依赖冲突的目的

  • spring-boot-starter-parent(2.5.0)与 spring-boot-starter-parent(2.4.6)共计57处坐标版本不同

实际开发

  • 使用任意坐标时,仅书写GAV中的G和A,V由SpringBoot提供

    G:groupid

    A:artifactId

    V:version

  • 如发生坐标错误,再指定version(要小心版本冲突)

辅助功能

image-20240308170656325

image-20240308170706258

程序启动

image-20240308171417821

基础配置

配置文件格式

image-20240308180223990

自动提示功能消失解决方案

image-20240308180315400

优先级

application.properties > application.yml > application.yaml

image-20240308180447630

yaml

YAML(YAML Ain’t Markup Language),一种数据序列化格式。

优点:

  • 容易阅读

    yaml 类型的配置文件比 xml 类型的配置文件更容易阅读,结构更加清晰

  • 容易与脚本语言交互

  • 以数据为核心,重数据轻格式

    yaml 更注重数据,而 xml 更注重格式

YAML 文件扩展名:

  • .yml (主流)
  • .yaml

yaml语法规则

  • 大小写敏感

  • 属性层级关系使用多行描述,每行结尾使用冒号结束

  • 使用缩进表示层级关系,同层级左侧对齐,只允许使用空格(不允许使用Tab键)

    空格的个数并不重要,只要保证同层级的左侧对齐即可。

  • 属性值前面添加空格(属性名与属性值之间使用冒号+空格作为分隔)

  • # 表示注释

核心规则:数据前面要加空格与冒号隔开

数组数据

image-20240308182109158

yaml读取方式

image-20240308182525097

image-20240308182542224

image-20240308182608023

image-20240308182622733

多环境开发

多环境启动

image-20240308183205226

image-20240308183237767

多环境命令行启动参数设置

有这样的场景,我们开发完毕后需要测试人员进行测试,由于测试环境和开发环境的很多配置都不相同,所以测试人员在运行我们的工程时需要临时修改很多配置,如下

1
java –jar springboot.jar –-spring.profiles.active=test --server.port=85 --server.servlet.context-path=/heima --server.tomcat.connection-timeout=-1 …… …… …… …… ……

针对这种情况,SpringBoot 定义了配置文件不同的放置的位置;而放在不同位置的优先级时不同的。

SpringBoot 中4级配置文件放置位置:

  • 1级:classpath:application.yml
  • 2级:classpath:config/application.yml
  • 3级:file :application.yml
  • 4级:file :config/application.yml

说明:级别越高优先级越高

多环境开发兼容问题

image-20240308193825250

maven为主

image-20240308194336036

image-20240308194514137

image-20240308194556013

image-20240308194610016

配置文件分类

SpringBoot 中4级配置文件放置位置:

  • 1级:classpath:application.yml (最高)
  • 2级:classpath:config/application.yml
  • 3级:file :application.yml
  • 4级:file :config/application.yml (最低)

作用:

  • 1级和2级留做系统打包后设置通用属性

  • 3级与4级用于系统开发阶段设置通用属性

SpringBoot 2.5.0版本存在一个bug,我们在使用这个版本时,需要在 jar 所在位置的 config 目录下创建一个任意名称的文件夹

整合第三方技术

整合JUnit

image-20240308200515102

image-20240308200540039

基于SpringBoot实现SSM整合

image-20240308201750685

image-20240308201805518

image-20240308201819582

image-20240308201834547

image-20240308201842087

  • 标题: SpringBoot
  • 作者: lihuibear
  • 创建于: 2024-03-08 16:21:12
  • 更新于: 2024-03-08 20:37:16
  • 链接: https://lihuibear.cn/posts/2152316492/
  • 版权声明: 本文章采用 CC BY-NC-SA 4.0 进行许可。
 评论