📜  Spring @RequestMapping 注解与示例(1)

📅  最后修改于: 2023-12-03 15:20:12.361000             🧑  作者: Mango

Spring @RequestMapping 注解

简介

Spring @RequestMapping注解是Spring MVC框架中最常用的注解之一。它用于映射HTTP请求到Controller中的处理方法。使用该注解后,当有HTTP请求到达服务器时,Spring就会自动映射到指定方法,并调用该方法进行处理。

语法格式
@RequestMapping(value = "/url", method = RequestMethod.GET)
public String methodName() {
    // Handle request
}
参数说明
  • value:指定URL路径,必须以’/’开头。
  • method:指定请求类型,可以是GET、POST、PUT、DELETE等。(默认值是RequestMethod.GET)
示例代码
@RestController
public class UserController {

    @GetMapping("/users")
    public List <User> getAllUsers() {
        return userService.getAllUsers();
    }

    @GetMapping("/users/{id}")
    public User getUserById(@PathVariable Long id) {
        return userService.getUserById(id);
    }

    @PostMapping("/users")
    public User addUser(@Valid @RequestBody User user) {
        return userService.addUser(user);
    }

    @PutMapping("/users/{id}")
    public User updateUser(@PathVariable Long id, @Valid @RequestBody User user) {
        return userService.updateUser(id, user);
    }

    @DeleteMapping("/users/{id}")
    public void deleteUser(@PathVariable Long id) {
        userService.deleteUser(id);
    }
}

在上面的示例中,我们创建了一个UserController来处理用户相关请求。每个类方法使用了不同的RequestMapping注解来映射HTTP请求到相应的方法上。

其中:

  • @GetMapping:处理HTTP GET请求,对应于@RequestMapping(value=”/users”, method=RequestMethod.GET)。
  • @PostMapping:处理HTTP POST请求,对应于@RequestMapping(value=”/users”, method=RequestMethod.POST)。
  • @PutMapping:处理HTTP PUT请求,对应于@RequestMapping(value=”/users/{id}”, method=RequestMethod.PUT)。
  • @DeleteMapping:处理HTTP DELETE请求,对应于@RequestMapping(value=”/users/{id}”, method=RequestMethod.DELETE)。

注:@RequestMapping已被这些简单的更特定的修饰符取代。