Spring Boot 是一个基于 Java 的开源框架,它旨在简化 Spring 应用程序的创建和部署,Spring Boot 通过自动配置和约定大于配置的原则,让开发者能够快速搭建应用程序框架,并专注于业务逻辑的实现。
Spring Boot 的主要特点包括:
1. 独立运行:Spring Boot 应用程序可以作为独立的应用程序运行,不需要部署到 Web 服务器或应用服务器。
2. 自动配置:Spring Boot 会根据项目中的依赖关系自动配置相关属性,减少了手动配置的工作量。
3. 嵌入式 Web 服务器:Spring Boot 支持嵌入式 Web 服务器,例如 Tomcat 和 Jetty,使得应用程序能够快速启动和响应。
4. 提供生产就绪功能:Spring Boot 提供了许多生产就绪功能,例如安全性、性能监控、健康检查等,使得应用程序能够更好地适应生产环境。
5. 无代码生成和 XML 配置:Spring Boot 通过 Java 注解、属性文件和 YAML 文件等方式,减少了 XML 配置的使用,更加简洁和易于维护。
6. 丰富的插件支持:Spring Boot 提供了许多插件,方便与其他流行的框架和库集成,如 Hibernate、Thymeleaf、Spring Data 等。
下面是一个简单的 Spring Boot 应用程序的示例:
1. 在项目中引入 Spring Boot 的起步依赖,在 Maven 项目中,将以下依赖添加到 pom.xml 文件中:
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter</artifactId> <version>2.5.4</version> </dependency>
对于 Gradle 项目,将以下依赖添加到 build.gradle 文件中:
implementation 'org.springframework.boot:spring-boot-starter:2.5.4'
2. 创建一个 Spring Boot 主类,并添加 @SpringBootApplication 注解,这个注解是 Spring Boot 的核心注解,它包括了 @SpringBootConfiguration、@EnableAutoConfiguration 和 @ComponentScan 等注解的功能。
import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; @SpringBootApplication public class MyApp { public static void main(String[] args) { SpringApplication.run(MyApp.class, args); } }
3. 创建一个控制器类,并添加 @RestController 注解,这个注解表示该类中的所有方法返回值直接写入到 HTTP 响应中。
import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RestController; @RestController public class HelloController { @GetMapping("/hello") public String hello() { return "Hello, Spring Boot!"; } }
4. 在 resources 目录下创建一个 application.properties 或 application.yml 文件,用于配置应用程序的属性,可以设置服务器端口号、数据库连接信息等,以下是一个 application.properties 文件的示例:
server.port=8080 spring.datasource.url=jdbc:mysql://localhost:3306/mydb spring.datasource.username=root spring.datasource.password=password