SpringBoot集成RESTful的使用
标签: SpringBoot集成RESTful的使用 spring boot博客 51CTO博客
2023-07-18 18:24:26 139浏览
一、技术演变
早期的后端工作人员不仅需要Java功底扎实,还需要熟练掌握HTML、CSS、JS等前端技术。随着Angular、Vue等前端框架的崛起,以及互联网的迅速发展,前后端分离的开发模式逐渐占据了主流。我们不仅需要为Web端提供支持,还需要为移动端提供支持。所以对API的设计规范就显得格外重要了。这个时候RESTful凭借结构清晰、易于理解、方便扩展的特性成了设计API的不二选择。
二、介绍
RESTful风格的API要满足以下几个要求:
1.用URI定位资源
2.URI由名词组成
3.使用HTTP方法操作资源
接口 |
非RESTful |
RESTful |
新增用户 |
saveUser |
POST /user |
修改用户 |
updateUser |
PUT /user |
获取用户 |
findUser |
GET /user/1 |
删除用户 |
deleteUser |
DELETE /user/1 |
三、项目实践
我们创建一个实体类:
package com.example.funlydemo.bean;
import lombok.Data;
/**
* @author qx
* @date 2023/07/17
* @desc
*/
@Data
public class User {
/**
* ID
*/
private Long id;
/**
* 姓名
*/
private String name;
/**
* 年龄
*/
private Integer age;
}
1.获取用户数据:
package com.example.funlydemo.controller;
import com.example.funlydemo.bean.User;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
/**
* @author qx
* @date 2023/07/17
* @desc 测试
*/
@RestController
@RequestMapping("/user")
public class UserController {
/**
* 获取用户数据
*
* @param id 用户ID
* @return 用户数据
*/
@GetMapping("/{id}")
public User get(@PathVariable("id") Long id) {
User user = new User();
user.setId(id);
user.setName("lisi");
user.setAge(20);
return user;
}
}
我们在浏览器例访问http://localhost:8080/user/1用来获取ID为1的用户数据。
2.新增用户数据
/**
* 新增用户数据
*
* @param user 新增的用户对象
* @return 用户数据
*/
@PostMapping
public User add(@RequestBody User user) {
user.setId(2L);
return user;
}
我们使用@RequestBody注解让请求的数据以JSON数据的格式提交到服务端。
3.修改用户数据
/**
* 修改用户数据
*
* @param user 要修改的用户对象
* @return 修改后的用户数据
*/
@PutMapping
public User update(@RequestBody User user) {
return user;
}
我们使用@PutMapping标注修改的方法。
PATCH方法也是用于更新数据,但是PUT方法用于整体的更新,PATCH方法用于局部的更新。
4.删除用户数据
/**
* 删除用户数据
*
* @param id 用户ID
* @return 删除结果
*/
@DeleteMapping("/{id}")
public String delete(@PathVariable Long id) {
//根据ID获取用户数据 调用删除的方法删除用户
return "删除用户ID为" + id + "的数据成功";
}
好博客就要一起分享哦!分享海报
此处可发布评论
评论(0)展开评论
展开评论