全部学科
Python全栈
python
NodeJS全栈
nodejs
📅 2026-05-18 6 分钟 ✍️ juanwangdev

请求映射注解

SpringMVC通过注解将HTTP请求映射到控制器方法,支持路径、方法、参数等多维度匹配。

RequestMapping

通用请求映射注解,可标注在类和方法上。

类级别

Java
@Controller
@RequestMapping("/user")
public class UserController {

    @RequestMapping("/list")
    public String list() {
        return "userList";
    }
    // 完整路径:/user/list
}

方法级别

Java
@RequestMapping(
    value = "/hello",
    method = RequestMethod.GET,
    params = "name"
)
public String hello() {
    return "hello";
}

衍生注解

Spring提供HTTP方法专用的映射注解:

Java
@RestController
@RequestMapping("/api")
public class ApiController {

    @GetMapping("/user/{id}")
    public User getUser(@PathVariable Integer id) {
        return userService.findById(id);
    }

    @PostMapping("/user")
    public User createUser(@RequestBody User user) {
        return userService.save(user);
    }

    @PutMapping("/user")
    public User updateUser(@RequestBody User user) {
        return userService.update(user);
    }

    @DeleteMapping("/user/{id}")
    public void deleteUser(@PathVariable Integer id) {
        userService.delete(id);
    }
}
注解HTTP方法
@GetMappingGET
@PostMappingPOST
@PutMappingPUT
@DeleteMappingDELETE
@PatchMappingPATCH

常用属性

属性说明
value/path请求路径
methodHTTP方法
params请求参数条件
headers请求头条件
consumesContent-Type限制
producesAccept限制

推荐使用衍生注解(@GetMapping等),代码更简洁清晰。

要点总结

  • @RequestMapping:通用映射,可指定method等属性
  • @GetMapping/@PostMapping等:专用注解,代码简洁
  • 类注解+方法注解组成完整路径
  • params、headers属性可实现更精确匹配
想在手机上练习这篇文章的配套题目?
使用微信卷王开发者小程序,打开首页顶部扫码功能识别二维码
← 上一篇 Spring MVC ViewResolver视图解析器
下一篇 → 请求接收与参数绑定综合
扫码体验小程序
加载中
想在手机上刷题学习?
使用微信卷王开发者小程序,打开首页顶部扫码功能识别二维码