Spring Boot简介
前言
个人对Spring Boot的理解
什么是Spring Boot?
-
Spring Boot 是一个开源的Java框架,它可以让开发者更快地搭建基于 Spring 框架的应用程序。Spring Boot 采用约定大于配置的方式,提供了一种简化 Spring 应用程序开发的方式。
-
Spring Boot 集成了许多常用的框架和库,例如 Spring Data、Spring Security、Thymeleaf 等,同时它还提供了自动化配置、快速开发等特性。这使得开发者可以专注于应用程序的业务逻辑,而不需要关注大量的配置和代码。
另外,Spring Boot 可以与各种构建工具(如 Maven、Gradle)和开发工具(如 Eclipse、IntelliJ IDEA)集成,方便开发者进行开发、测试和部署等工作。
Spring Boot由什么组成?
-
Spring Framework:Spring Boot 基于 Spring Framework,因此它继承了 Spring Framework 的所有功能和特性。
-
自动化配置:Spring Boot 提供了自动化配置的机制,可以根据项目的依赖和环境自动配置应用程序,从而减少开发者的配置工作量。
-
命令行界面:Spring Boot 提供了命令行界面,可以快速创建、运行和测试 Spring Boot 应用程序。
-
Actuator:Actuator 是 Spring Boot 提供的一个功能强大的监控和管理工具,可以监控应用程序的健康状况、性能指标和运行状态等。
-
外部化配置:Spring Boot 支持将配置信息放在外部文件中,例如 application.properties 或 application.yml,从而方便开发者对应用程序进行配置。
-
启动器(Starters):Spring Boot 提供了大量的启动器,这些启动器可以简化依赖管理工作,让开发者可以更快地集成其他框架和库。
总之,Spring Boot 是一个集成了多个组件和功能的开发框架,可以让开发者更加快速、简单地构建高效、健壮的应用程序。
Spring Boot和SSM的关系
-
Spring Boot 是一个基于 Spring 框架的开发框架,它的设计目标是让 Spring 应用程序的开发变得更加简单和快速。Spring Boot 可以看作是对 Spring 框架的增强和扩展,它通过自动化配置和约定优于配置的方式,使得开发者可以更快地开发 Spring 应用程序,同时还集成了很多其他框架和库,例如 Spring Data、Spring Security 等。
-
SSM 则是 Spring、Spring MVC 和 MyBatis 三个框架的组合。Spring 是一个开源的应用程序框架,可以提供全面的基础设施支持,包括依赖注入、AOP 等。Spring MVC 是一个基于 MVC 模式的 Web 框架,可以帮助开发者构建 Web 应用程序。MyBatis 是一个 ORM 框架,可以帮助开发者将 Java 对象映射到数据库表。
-
Spring Boot 可以替代 SSM 的一些功能,例如自动化配置、外部化配置、启动器等,但是 Spring Boot 也可以与 SSM 配合使用。例如,开发者可以在 Spring Boot 中使用 Spring Data JPA 或 MyBatis 来访问数据库,这与 SSM 的做法是类似的。同时,开发者也可以在 Spring Boot 中使用 Spring MVC 或其他 Web 框架来构建 Web 应用程序。因此,Spring Boot 和 SSM 并不是互相排斥的关系,而是可以共同使用的。
如何在IDEA中创建Spring Boot
此处以IDEA2021为例
1.创建新项目
或者
打开 IntelliJ IDEA,点击 “File” -> “New” -> “Project”
2.基础配置
在弹出的 “New Project” 窗口中,选择 “Spring Initializr” ,如图我们可以在这里配置项目的基础信息,按需填写和选择
点击下一步后,如图可以对Spring Boot进行基础配置,比如说需要Lombok、Spring Web等都可以在此勾选
点击完成后即完成了Spring Boot的创建
3.项目结构
创建完成后我们可以看到项目结构如下(此处为选择了Spring Web的项目)
- src/main/java路径:主要编写业务程序
- src/main/resources路径:存放静态文件和配置文件
- src/test/java路径:主要编写测试程序
- xxxApplication为项目的启动类
一个完整的Spring Boot项目结构应该是
- config为各种配置类
- domain为实体类
- mapper为持久层
- server为业务层
- controller为表现层
- 详细可见:SSM简介