Spring Boot Basics Tutorial for Beginners

1. Spring Boot 简介

1.1 什么是 Spring Boot?

  • Spring Boot 是 Spring 框架的扩展,旨在简化新 Spring 应用程序的配置和开发。
  • 它通过提供预配置的默认设置和嵌入式服务器(如 Tomcat)来简化开发过程。
  • 目标是帮助开发者快速构建独立的、生产级的 Spring 应用程序。

1.2 核心特性

  • 自动配置:根据项目的依赖关系自动配置 Spring 应用。
  • 起步依赖:提供一系列常用的依赖集合,简化项目配置。
  • 内嵌服务器:支持嵌入式 Tomcat、Jetty 等服务器,简化部署。
  • 生产就绪功能:内置健康检查、指标监控等功能。

2. 环境准备与项目创建

2.1 开发工具

  • JDK 8+
  • Maven 3.0+Gradle

2.2 使用 Spring Initializr 创建项目

  1. 访问 Spring Initializr 网站。
  2. 选择项目元数据:
    • Project:选择 Maven 或 Gradle。
    • Language:选择 Java。
    • Spring Boot:选择最新的稳定版本。
    • Project Metadata:填写 Group 和 Artifact 信息。
  3. 添加依赖:
    • Spring Web(用于构建 Web 应用程序)
  4. 点击 “Generate” 按钮生成项目。
  5. 下载并解压缩生成的项目文件。
  6. 使用 IDE(如 IntelliJ IDEA 或 Eclipse)导入项目。

3. 创建第一个 Spring Boot 应用

3.1 主启动类

1
2
3
4
5
6
7
8
9
10
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

3.2 配置文件

src/main/resources/application.properties 中添加或修改配置:

1
2
3
4
5
server.port=8080
spring.datasource.url=jdbc:h2:mem:testdb
spring.datasource.driver-class-name=org.h2.Driver
spring.datasource.username=sa
spring.datasource.password=password

3.3 创建 RESTful Web 服务

3.3.1 创建实体类

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;

@Entity
public class User {

@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Long id;
private String name;

// Getters and Setters
}

3.3.2 创建 Repository

1
2
3
import org.springframework.data.jpa.repository.JpaRepository;

public interface UserRepository extends JpaRepository<User, Long> {}

3.3.3 创建 Controller

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import java.util.List;

@RestController
@RequestMapping("/api/users")
public class UserController {

@Autowired
private UserRepository userRepository;

@GetMapping
public List<User> getAllUsers() {
return userRepository.findAll();
}

@PostMapping
public User createUser(@RequestBody User user) {
return userRepository.save(user);
}
}

4. 总结与下一步

  • 本章介绍了 Spring Boot 的基础知识和如何使用 Spring Initializr 创建一个简单的 Spring Boot 项目。
  • 下一步将深入学习 Spring Boot 的高级特性和最佳实践。

推荐学习资源