SpringBoot

1. 概述

SpingBoot是一个为了简化Spring应用开发而设计的轻量级框架,通过简化Spring应用程序的创建和部署过程,使得开发者可以快速搭建和部署Spring应用程序,同时保持Spring框架的灵活性和强大的功能,通过集成了大量框架解决依赖包版本冲突和引用不稳定问题(通过付工程来指定依赖版本)

2. 特点

  1. 快速创建基于 Spring 的应用程序: Spring Boot 旨在简化 Spring 应用的初始搭建和开发过程。它通过自动配置和起步依赖,使得创建一个可运行的 Spring 应用变得非常快捷。

  2. Maven 和 Gradle 插件: Spring Boot 提供了 Maven 和 Gradle 的插件,这些插件支持创建可执行的 JAR 和 WAR 文件。这使得部署变得非常简单,因为应用程序及其所有依赖都被打包在一个单一的文件中。

  3. 内嵌 Servlet 容器: Spring Boot 内嵌了如 Tomcat 或 Jetty 这样的 Servlet 容器,这意味着你不需要单独部署 WAR 文件到外部的 Servlet 容器中,可以直接运行 JAR 文件。

  4. 自动配置机制: 自动配置是 Spring Boot 的核心特性之一,它根据添加的依赖自动配置 Spring 应用。这大大减少了传统 Spring 应用中需要的大量 XML 配置。

  5. 集成多种第三方库: Spring Boot 通过起步依赖集成了多种第三方库,并且指定了这些库的版本,从而解决了依赖包版本冲突的问题。

  6. 关注业务逻辑: 由于 Spring Boot 减少了配置的复杂性,开发者可以更加专注于编写业务逻辑代码,而不是配置。

  7. 提供准备好的特性: Spring Boot Actuator 提供了应用程序的监控和管理特性,如指标、健康检查和外部化配置。

  8. 注解配置: Spring Boot 推崇使用注解来进行配置,而不是 XML 配置文件。这使得代码更加简洁,易于理解和维护。

  9. 起步依赖简化 Maven 配置 : 起步依赖(Starters)是 Spring Boot 提供的一组预定义的依赖描述符,它们定义了对其他库的传递依赖。通过在 Maven 的 pom.xml 文件中引入一个起步依赖,可以简化构建配置,确保依赖的一致性。

3. 快速开始

2.1 创建方式一

使用官网GUI配置,选择对应依赖,下载生成的代码

  • 官网地址:https://start.spring.io

    SNAPSHOT:快照版,也就是开发版

    M: 里程碑版本,表示该版本较之前版本有功能上的重大更新

    Release:最终版本

  • 点击GENERATE按钮,生成项目框架文件,解压后,就得到了一个SpringBoot项目文件

3.2 创建方式二

直接在IDEA中创建SpringBoot项目

  • 打开IDEA,新建项目,选择Spring Initializr

  • 填写项目基本信息

  • 勾选web选项中的SpringWEB

  • 确认信息无误后,点击完成即可新建一个SpringBoot项目

  • SpringBoot项目创建完成

  • 开发Controller

    复制代码
    @RestController
    public class HelloController {
    ​
        @GetMapping("/hello")
        public String hello() {
            return "Hello SpringBoot!!!";
        }
    }
  • 访问结果

3.3 项目目录结构

  • SpringbootDemoApplication

    Spring Boot项目的启动类

  • application.properties

    Spring Boot项目的配置文件 ,文件名字必须叫application,文件类型也可以是yml

  • pom.xml

    打开一个新建的SpringBoot项目后,可以在pom文件中看见如下配置:

    与之前创建的Maven项目不同的是,在SpringBoot项目的pom文件中,多了一个父工程的配置信息,

    由此看出,每个SpringBoot项目都会依赖一个父工程 ,这个父工程就是:spring-boot-starter-parent

    我们可以进入到依赖的父工程的pom文件中,看到如下配置:

    在观察这个父工程的pom文件中发现,这个配置文件依旧依赖了另一个父工程,另一个父工程是:spring-boot-dependencies

    我们再次进入到另一个父工程的pom文件中,看到如下配置:

    配置文件中整体分为三大类:当前项目信息、依赖管理信息、构建管理信息


    pom中包含创建项目时选择的依赖,Spring Boot项目默认继承于spring-boot-starter-parent

    spring-boot-starter-parent继承于spring-boot-dependencies

    spring-boot-dependencies中主要是确定市面常用技术的版本,从而使子项目不需要考虑各个框架间的版本兼容问题。

    Spring Boot的依赖通常为两种格式:

    • spring-boot-starter-xxx

      Spring Boot官方提供的依赖,无缝兼容,配置简单

    • xxx- spring-boot-starter

      由框架/技术团队提供的依赖,适配Spring Boot新版本相对较慢,使用时需要关注兼容性。

相关推荐
期待のcode2 小时前
MyBatisX插件
java·数据库·后端·mybatis·springboot
安审若无4 小时前
oracel迁移数据文件至其他目录操作步骤
数据库
醇氧4 小时前
【Windows】优雅启动:解析一个 Java 服务的后台启动脚本
java·开发语言·windows
sunxunyong4 小时前
doris运维命令
java·运维·数据库
菜鸟起航ing4 小时前
Spring AI 全方位指南:从基础入门到高级实战
java·人工智能·spring
古城小栈4 小时前
Docker 多阶段构建:Go_Java 镜像瘦身运动
java·docker·golang
小鸡吃米…5 小时前
Python PyQt6教程七-控件
数据库·python
MapGIS技术支持5 小时前
MapGIS Objects Java计算一个三维点到平面的距离
java·开发语言·平面·制图·mapgis
Coder_Boy_5 小时前
业务导向型技术日志首日记录(业务中使用的技术栈)
java·驱动开发·微服务
忍冬行者5 小时前
清理三主三从redis集群的过期key和键值超过10M的key
数据库·redis·缓存