Spring Boot入门

Spring Boot 是一种基于 Spring 框架的简化应用开发工具,它为构建生产级的 Spring 应用程序提供了快速、简便的配置和开发体验。下面是 Spring Boot 入门的基础知识和步骤。

1. 什么是 Spring Boot

Spring Boot 是 Spring 框架的一个扩展,它提供了以下特性:

  • 自动配置:Spring Boot 可以根据项目的依赖自动配置框架组件,减少了手动配置的工作量。
  • 独立运行:Spring Boot 应用可以打包为一个可执行的 JAR 文件,嵌入式 Web 服务器(如 Tomcat、Jetty 等)让你不再需要外部容器。
  • 简化依赖管理 :通过 spring-boot-starter,你可以轻松添加常用的库,如 Web、JPA、Security 等。

2. Spring Boot 入门步骤

2.1. 环境准备

你需要安装以下工具:

  • Java JDK:Spring Boot 需要 Java 8 或以上版本。
  • Maven 或 Gradle:用于项目构建和依赖管理。
  • IDE:推荐使用 IntelliJ IDEA 或 Eclipse,支持 Spring 插件和增强开发体验。
2.2. 创建一个 Spring Boot 项目
方式一:使用 Spring Initializr 创建项目

Spring Initializr 是一个官方的在线生成器,你可以通过访问 https://start.spring.io/ 创建项目。

  1. 选择项目类型(Maven/Gradle)、语言(Java/Kotlin/Groovy)、Spring Boot 版本。
  2. 选择依赖,如 Spring Web、Spring Data JPA、Thymeleaf 等。
  3. 生成并下载项目,解压后导入到你的 IDE。
方式二:使用 IDE 直接创建项目

一些 IDE(如 IntelliJ IDEA 和 Spring Tool Suite)内置了 Spring Initializr 支持,允许你直接在 IDE 中创建和配置 Spring Boot 项目。

2.3. 编写第一个 Spring Boot 应用

在生成的项目中,src/main/java 下的主类通常被称为 "Application" 类。它包含一个 main() 方法,用于启动 Spring Boot 应用。

java 复制代码
package com.example.demo;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;

@SpringBootApplication
public class DemoApplication {
    public static void main(String[] args) {
        SpringApplication.run(DemoApplication.class, args);
    }
}
  • @SpringBootApplication:这是一个组合注解,包含了 @Configuration、@EnableAutoConfiguration 和 @ComponentScan,用于自动配置和组件扫描。
2.4. 添加一个简单的 REST 控制器
java 复制代码
package com.example.demo.controller;

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!";
    }
}
  • @RestController:标识这是一个 RESTful Web 控制器。
  • @GetMapping("/hello"):映射 /hello GET 请求。

启动应用后,你可以通过 http://localhost:8080/hello 访问这个端点并获取返回的消息。

2.5. 使用嵌入式服务器

Spring Boot 自动配置了 Tomcat 作为默认的嵌入式服务器,你可以通过执行 mvn spring-boot:run 或直接运行 main() 方法启动应用。服务器会在默认的端口 8080 上启动。

3. 常用的 Spring Boot 依赖

Spring Boot 提供了各种 starter 依赖,它们是预配置的库集,简化了开发。常用的有:

  • spring-boot-starter-web:用于构建 Web 应用程序,包括 RESTful API 和 MVC 应用。
  • spring-boot-starter-data-jpa:用于与数据库交互的 JPA 和 Hibernate 支持。
  • spring-boot-starter-security:提供基础的安全机制,如认证和授权。
  • spring-boot-starter-thymeleaf:用于构建基于 Thymeleaf 模板的 Web 应用。

4. Spring Boot 的自动配置

Spring Boot 使用 自动配置 来减少繁琐的 XML 配置。比如,当你引入了 spring-boot-starter-web 依赖,它会自动配置 Spring MVC 和嵌入式 Tomcat。

如果你想自定义配置,可以通过 application.properties 或 application.yml 文件进行设置。例如,修改默认的服务器端口:

properties 复制代码
server.port=8081

5. 总结

Spring Boot 是一个非常强大的工具,它大大简化了 Spring 应用的开发过程,特别是在 Web 开发和微服务架构中。通过简单的配置和自动化的依赖管理,你可以快速构建生产级的应用。

相关推荐
谢亮_vipxieliang3 小时前
Spring 事务失效的常见场景
java·开发语言·数据库·spring boot
专业程序开发源3 小时前
springboot简历管理系统81389-计算机课程设计、毕业设计
java·vue.js·spring boot·后端·spring·php·课程设计
专业程序开发源4 小时前
springboot社区养老系统44071-计算机课程设计、毕业设计
vue.js·spring boot·后端·python·django·php·课程设计
余槐i4 小时前
数据没回滚也不报错:@Transactional 自调用失效的 3 种复现与修复
spring boot·mysql·多线程·spring 事务
小蒜学长5 小时前
基于SpringBoot的佳新超市管理系统设计与实现系统(代码+数据库+LW)
java·数据库·spring boot·后端·佳新超市管理系统
vx_Biye_Design7 小时前
springboot高校选课系统82776-计算机课程设计、毕业设计
java·vue.js·spring boot·后端·spring·课程设计·express
专业程序开发源9 小时前
SSM校园拍摄交流服务平台36936-计算机课程设计、毕业设计
java·spring boot·后端·python·elasticsearch·php·课程设计
AI人工智能+电脑小能手10 小时前
Java 企业级工具类全家桶-74-JSON序列化工具类
spring boot·jackson·jdk 17·objectmapper·java工具类·json序列化·dto互转
ZealSinger11 小时前
Boot4升级PostConstruct不跑了
java·spring boot·spring·升级迁移
专业程序开发源12 小时前
django新闻推荐系统70655-计算机课程设计、毕业设计
java·javascript·spring boot·后端·python·django·课程设计