30分钟内用Java编写REST API:分步指南

面向初学者的在线Python训练器

轻松学习Python,无需理论负担。在浏览器中直接解决带自动检查的实践任务,无需安装任何东西。

开始课程

如何在30分钟内用Java编写REST API



现代Web开发离不开REST API——这种架构风格允许客户端和服务器通过HTTP协议交换数据。Java凭借其可靠性和庞大的生态系统,仍然是构建后端服务的最佳语言之一。在本文中,我们将展示如何在30分钟内使用Spring Boot(最流行的微服务框架)用Java编写一个完整的REST API。您将创建一个简单的CRUD服务来管理任务列表(Todo List),该服务可以立即部署和测试。



什么是REST API以及为什么选择Java?



REST(Representational State Transfer)是一组原则,其中每个资源(例如用户、任务或商品)都有唯一的URL,交互通过标准HTTP方法进行:GET(获取)、POST(创建)、PUT(更新)和DELETE(删除)。Java与Spring Boot框架提供了现成的注解和工具,可以在几分钟内实现REST API。您无需手动解析JSON或配置服务器——这一切都由Spring完成。



分步指南:在30分钟内用Java编写REST API



步骤1:项目设置和依赖项



最快入门的方法是使用Spring Initializr。选择以下参数:

  • Project: Maven
  • Language: Java
  • Spring Boot: 3.2.0(或最新的稳定版本)
  • Dependencies: Spring Web, Spring Data JPA, H2 Database


点击"Generate",下载ZIP压缩包并解压。在您的IDE(IntelliJ IDEA、Eclipse或VS Code)中打开项目。pom.xml文件应包含以下依赖项:



<dependencies>    <dependency>        <groupId>org.springframework.boot</groupId>        <artifactId>spring-boot-starter-web</artifactId>    </dependency>    <dependency>        <groupId>org.springframework.boot</groupId>        <artifactId>spring-boot-starter-data-jpa</artifactId>    </dependency>    <dependency>        <groupId>com.h2database</groupId>        <artifactId>h2</artifactId>        <scope>runtime</scope>    </dependency></dependencies>


H2数据库是一个嵌入式内存数据库,无需安装。对于生产环境,您可以将其替换为PostgreSQL或MySQL。



步骤2:创建数据模型(Entity)



创建一个包model,并在其中创建类TodoItem.java。这是一个实体,映射到数据库中的表。



package com.example.demo.model;

import jakarta.persistence.*;

@Entity@Table(name = "todos")public class TodoItem {

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

@Column(nullable = false) private String title;

private boolean completed;

// 构造函数 public TodoItem() {}

public TodoItem(String title, boolean completed) { this.title = title; this.completed = completed; }

// Getter和Setter方法 public Long getId() { return id; } public void setId(Long id) { this.id = id; }

public String getTitle() { return title; } public void setTitle(String title) { this.title = title; }

public boolean isCompleted() { return completed; } public void setCompleted(boolean completed) { this.completed = completed; }}


这里我们使用了JPA注解:@Entity告诉Spring该类是一个表,@Id是主键,@GeneratedValue用于自动生成ID。



博客

书籍推荐