在请求Controller的过程中,@PostMapping和@PutMapping在用法上几乎没有区别,都可以将请求参数传递到Controller方法中,但是二者存在本质上的区别:
引入概念:幂等性(idempotent),简单来说就是多次访问对rest服务产生的结果不会有改变。
http协议明确规定,put、get与delete请求都是具有幂等性的,而post为非幂等性请求,就是说接口被定义为post请求可访问时,说明这个接口对数据库的影响是非幂等性的。所以一般插入新数据时,用post方法,更新数据库时,用put方法,以此类推@PostMapping注解是标示接口为非幂等性接口,@PutMapping注解是标示接口为幂等性接口。
SpringBoot-@PostMapping与@PutMapping注解的区别
最新推荐文章于 2024-06-14 17:18:50 发布