Spring中@GetMapping、@PostMapping、@PutMapping、@DeleteMapping、@PatchMapping的实际用法

1:@GetMapping

处理get请求,传统的RequestMapping来编写应该是

@RequestMapping(value = "path" , method = RequestMethod.GET)

新方法可简写为:@GetMapping("path")

通常在查询数据时使用,例如:

/**
 * 根据ID查询
 * @param id
 * @return
 */
@GetMapping("/select/{id}")
MyStudent selectById(@PathVariable String id) {
    return myStudentMapper.selectByPrimaryKey(id);
}

2: @PostMapping

处理post请求,传统的RequestMapping来编写应该是

@RequestMapping(value = "path", method = RequestMethod.POST)

新方法可简写为:@PostMapping("path")

通常在新增数据时使用,例如:

/**
 * 插入数据
 * @param id
 * @param name
 * @param birth
 * @param sex
 * @return
 */
@PostMapping("/student")
public int insertStu(@RequestParam String id, @RequestParam String name, @RequestParam String birth, @RequestParam String sex) {
    MyStudent myStudent = new MyStudent();
    myStudent.setsId(id);
    myStudent.setsName(name);
    myStudent.setsBirth(birth);
    myStudent.setsSex(sex);
    return myStudentMapper.insert(myStudent);
}

3: @PutMapping、@PatchMapping

处理put和patch请求,传统的RequestMapping来编写应该是

@RequestMapping(value = "patch",method = RequestMethod.PUT/PATCH)

新方法可简写为:@PostMapping("patch")

两者都是更新,@PutMapping为全局更新,@PatchMapping是对put方式的一种补充,put是对整体的更新,patch是对局部的更新。例如:

/**
 * 局部更新用PatchMapping 全局更新用PutMapping
 * @param myStudent
 * @return
 */
@PatchMapping("/update")
public int updateById(MyStudent myStudent) {
    return myStudentMapper.updateByPrimaryKey(myStudent);
}

4:@DeleteMapping

处理delete请求,传统的RequestMapping来编写应该是
@RequestMapping(value = "path",method = RequestMethod.DELETE)

新方法可简写为:@DeleteMapping("path")

通常在删除数据的时候使用,例如:

/**
 * 根据ID删除一条数据
 *
 * @param id
 * @return
 */
@DeleteMapping("/delete/{id}")
public int deleteById(@PathVariable String id) {
    return myStudentMapper.deleteByPrimaryKey(id);
}

5:对于前端传值的时候注意:

对于json类型的数据(‘Content-Type’: ‘application/json’ ),需要使用@RequestBody接受,否则控制台会报错

对于其他类型的数据(‘Content-Type’: ‘application/x-www-form-urlencoded’),后台可以直接接受

最好使用json传值,因为null值在json中会被正常处理

  • 2
    点赞
  • 63
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
@GetMapping和@PostMappingSpring框架用于处理HTTP请求的注解。@GetMapping用于处理GET请求,@PostMapping用于处理POST请求。它们的使用方法如下: 1. @GetMapping: - 使用@GetMapping注解的方法将会处理HTTP GET请求。 - 可以在方法上直接添加@GetMapping注解,也可以在类级别添加@RequestMapping注解,并指定GET请求的路径。 - 可以使用@RequestParam注解来接收请求参数,这些参数可以是路径参数或查询参数。 - 可以使用@PathVariable注解来接收路径参数。 - 可以使用@ResponseBody注解来指定方法的返回值作为响应体返回给客户端。 2. @PostMapping: - 使用@PostMapping注解的方法将会处理HTTP POST请求。 - 可以在方法上直接添加@PostMapping注解,也可以在类级别添加@RequestMapping注解,并指定POST请求的路径。 - 可以使用@RequestParam注解来接收请求参数,这些参数可以是表单参数或请求体JSON数据。 - 可以使用@RequestBody注解来接收请求体JSON数据,并将其转换为Java对象。 - 可以使用@ResponseBody注解来指定方法的返回值作为响应体返回给客户端。 总结起来,@GetMapping用于处理GET请求,@PostMapping用于处理POST请求。它们可以接收不同类型的请求参数,并将处理结果返回给客户端。这样可以简化处理HTTP请求的代码,并提高代码的可读性和可维护性。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *3* [GetmappingPostmapping](https://blog.csdn.net/qq_26139541/article/details/107726246)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *2* [reboot:ReBoot:一种重构工具,可在Java Spring-Boot应用程序自动应用最佳实践](https://download.csdn.net/download/weixin_42102401/15088118)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值