Spring Boot接收前端参数的注解总结

在 Spring Boot 里,后端控制器方法(Controller)可以通过不同的注解来"接收前端传来的参数",这些注解分别对应不同的传参方式。


🌟 常见的参数接收注解对比

注解 来源 用法 示例 URL / 请求体 说明
@PathVariable 路径变量 从 URL 路径中取参数 /user/123 用于 RESTful 风格接口,例如 /wish/delete/13
@RequestParam 查询参数(URL 上 ? 后面) 从 URL 的查询字符串取参数 /wish/delete?wishId=13 适合简单参数
@RequestBody JSON 请求体 从请求体中取参数 {"wishId":13,"title":"test"} 常用于 POST 请求
@RequestHeader 请求头 从 HTTP header 中取值 Authorization: Bearer xxx 取请求头里的值
@CookieValue Cookie 从 Cookie 里取值 - 比较少用
@ModelAttribute 表单参数 绑定到一个对象上(传统 form 表单) - 适用于 application/x-www-form-urlencoded

💡 举例讲解

✅ 1️⃣ @PathVariable

java 复制代码
@DeleteMapping("/wish/delete/{wishId}")
public boolean deleteWish(@PathVariable Long wishId) {
    return wishService.deleteWish(wishId);
}

👉 URL: DELETE /wish/delete/13
wishId = 13


✅ 2️⃣ @RequestParam

java 复制代码
@PostMapping("/wish/delete")
public boolean deleteWish(@RequestParam Long wishId) {
    return wishService.deleteWish(wishId);
}

👉 URL: POST /wish/delete?wishId=13
wishId = 13


✅ 3️⃣ @RequestBody

java 复制代码
@PostMapping("/wish/delete")
public boolean deleteWish(@RequestBody Map<String, Object> data) {
    Long wishId = (Long) data.get("wishId");
    return wishService.deleteWish(wishId);
}

👉 请求体:

json 复制代码
{
  "wishId": 13
}

适用于前端使用 wx.request 发送 JSON 格式数据。


✅ 4️⃣ 组合对象绑定

你也可以直接接收一个对象:

java 复制代码
@PostMapping("/wish/add")
public boolean addWish(@RequestBody Wish wish) {
    return wishService.addWish(wish);
}

👉 请求体:

json 复制代码
{
  "title": "学习SpringBoot",
  "description": "今天学@RequestParam"
}

🔍 小结

使用场景 推荐注解
REST 风格 URL /api/user/123 @PathVariable
URL 查询参数 /api/user?id=123 @RequestParam
JSON 请求体 { "id": 123 } @RequestBody
相关推荐
#麻辣小龙虾#25 分钟前
基于vue3.0开发一款【固废与废气运维管理系统】(支持源码)
前端·vue.js·vue3
Cosolar30 分钟前
Docsify零构建文档站完全指南:从快速搭建到企业级部署
前端·开源·github
weixin_4713830343 分钟前
Taro-02-页面路由
前端·taro
星栈独行1 小时前
Makepad 应用如何读文件、调接口、保存数据
前端·程序人生·ui·rust·github
一 乐2 小时前
家政服务管理系统|基于springboot + vue家政服务管理系统(源码+数据库+文档)
java·数据库·vue.js·spring boot·论文·毕设·家政服务管理系统
IT_陈寒2 小时前
Vite热更新失效?可能你在用Windows
前端·人工智能·后端
tedcloud1232 小时前
taste-skill部署教程:打造个性化AI推荐工作流
服务器·前端·人工智能·系统架构·edge
xinhuanjieyi2 小时前
html修复游戏种太阳错误
前端·游戏·html
椰椰椰耶3 小时前
[SpringCloud][14]OpenFeign参数传递方法
后端·spring·spring cloud
onething3653 小时前
Spring Boot + Spring AI 从入门到实战:7天转型计划 Day 3 —— 消息表设计 + 级联删除 + 事务管理
人工智能·后端