三亩地 三亩地SAN MU DI · CODE DIARY
ARTICLE DETAIL

日记详情

真实记录编程学习的某一天,欢迎挑你感兴趣的翻一翻。

SpringBoot RESTful API 设计与实现

SpringBoot RESTful API 设计与实现

SpringBoot RESTful API 设计与实现

实验目的

1.学会使用 @GetMapping、@PostMapping、@PutMapping、@DeleteMapping 设计 RESTful API。

2.掌握 @RequestParam 处理查询参数的方法。

3.学会 @PathVariable 处理路径参数的方法。

4.了解 @RequestBody 处理 JSON 请求体的方法。

实验环境

开发工具:IntelliJ IDEA

JDK版本:JDK 1.8及以上

构建工具:Maven

测试工具:Postman或浏览器

实验要求

本实验要求你基于Spring Boot 设计一个虚拟宇宙探索任务管理系统RESTful API,支持以下功能:

1.获取所有探索任务(GET /missions)。

2.根据ID获取特定探索任务(GET /missions/{id})。

3.添加新探索任务(POST /missions,接收JSON格式的任务信息)。

4.更新探索任务(PUT /missions/{id},更新任务信息)。

5.删除探索任务(DELETE /missions/{id})。

实验内容

第一部分:创建Spring Boot项目

  1. 使用IDEA创建项目
  2. 确保Maven项目成功导入,所有依赖已正确加载。

第二部分:虚拟宇宙探索任务管理系统(使用Restful风格编写)

1.创建 Mission 实体类

在entity包下创建实体类Mission

public class Mission{

private Long id;

private String name;

private String destination; // 任务目标星球

private String status; // 任务状态: 进行中 / 已完成 / 失败

private int duration; // 任务预计持续天数

// Getters and Setters

......

2.创建虚拟宇宙探索任务控制器类,其中包含5个方法:获取所有探索任务,根据 ID 获取特定探索任务,添加新探索任务,更新探索任务,删除探索任务。

第三部分:测试功能

  1. 获取所有探索任务

请求方式:GET

URL:http://localhost:8080/missions

返回结果:

[

{

"id": 1,

"name": "探索火星",

"destination": "Mars",

"status": "进行中",

"duration": 180

},

{

"id": 2,

"name": "木星卫星采样",

"destination": "Europa",

"status": "已完成",

"duration": 365

}

]

2.根据 ID 获取探索任务

请求方式:GET

URL:http://localhost:8080/missions/1

返回结果:

{

"id": 1,

"name": "探索火星",

"destination": "Mars",

"status": "进行中",

"duration": 180

}

3.添加新探索任务

请求方式:POST

URL:http://localhost:8080/missions

请求体(JSON 格式):

{

"id": 3,

"name": "太阳风暴观测",

"destination": "Sun",

"status": "未开始",

"duration": 90

}

返回结果:

"Mission added successfully!"

4.更新探索任务

请求方式:PUT

URL:http://localhost:8080/missions/3

请求体(JSON 格式):

{

"id": 3,

"name": "太阳风暴观测",

"destination": "Sun",

"status": "进行中",

"duration": 100

}

返回结果:

"Mission updated successfully!"

5.删除探索任务

请求方式:DELETE

URL:http://localhost:8080/missions/3

返回结果:

"Mission deleted successfully!"

← 返回列表