详解@RequestMapping、@GetMapping、@PostMapping、@PutMapping、@DeleteMapping的区别

HTTP协议定义了多种请求方法(也称为“动作”或“命令”),用于实现不同的客户端和服务器之间的交互。其中,GET、POST、PUT和DELETE是最常用的四种请求方法,它们各自有不同的语义和用途。
GET:请求从指定的资源获取数据。通常用于读取服务器上的数据。例如,我们在学生管理系统中查询某个学生,我们可以根据他的学号从服务器中获取他的信息。

POST:通常用于创建新的资源或提交表单数据。POST请求可以包含大量的数据,并且数据不会显示在URL中。例如,我需要创建一个学生的信息表单,内容有点多,此时我就可以将学生的信息打包成json格式,通过请求体body传输到服务器中。

PUT:通常用于更新现有资源。客户端必须提供资源的完整表示,包括任何需要更新的字段。与POST类似,PUT请求的数据也包含在请求体中,因此更适合发送敏感信息。例如,我需要对某个学生的学籍表单进行修改,大量的数据,我们可以打包成json格式,放在请求体中,传输到服务器。

DELETE:用于从服务器上删除资源。

这四种请求方法就对应四个注解。

@RequestMapping如果放在方法上面,就包含以上四种注解,相当于父类的感觉。

但是@RequestMapping放在类上面的时候,表示类中的所有响应请求的方法都是以该类路径为父路径。例如下面代码中的样子。localhost:8080/admin/employee。

下面对四个mapping注解逐一解释:(类似于增删改查操作)

1、增&

Spring Boot 是现代化的Java应用程序开发框架,其核心是注解。下面就是 Spring Boot 最核心的27个注解的详细解释: 1. @SpringBootApplication: 组合注解,包含了 @Configuration、@EnableAutoConfiguration 和 @ComponentScan。它标注一个主程序类,表示这是一个 Spring Boot 应用。 2. @RestController: 标注一个类,表示这个类是一个控制器,同时也会返回 Json 格式的数据。 3. @RequestMapping: 定义一个HTTP请求映射到控制器方法它可以有多个属性,包括路径、HTTP请求类型、请求头、参数等。 4. @GetMapping: 等同于@RequestMapping(method = RequestMethod.GET) 5. @PostMapping: 等同于@RequestMapping(method = RequestMethod.POST) 6. @PutMapping: 等同于@RequestMapping(method = RequestMethod.PUT) 7. @DeleteMapping: 等同于@RequestMapping(method = RequestMethod.DELETE) 8. @PathVariable: 映射 URL 请求路径中的占位符到方法参数中,可以在 URL 中使用 {variable} 格式来定义一个占位符。 9. @RequestParam: 映射请求参数到方法参数中。 10. @RequestBody: 请求头对象数据类型转换。 11. @RestControllerAdvice: 全局异常捕获处理。 12. @Validated: 验证请求参数的合法性。 13. @JsonFormat: 格式化输出的 Json 日期。 14. @JsonIgnore: 序列化时忽略某字段。 15. @JsonProperty: 反序列化时取指定的字段。 16. @Configuration: 声明一个类作为Java配置文件。 17. @ComponentScan: 自动扫描指定包下的所有 Spring 组件。 18. @ImportResource: 加载 xml 配置文件。 19. @Bean: 声明一个方法为 Bean,可供程序使用。 20. @Qualifier: 指定自动装配候选者的限定符。 21. @Autowired: 自动装配 Bean。 22. @Resource: 自动装配 Bean。 23. @Value: 注入配置文件中的属性。 24. @ConditionalOnMissingBean: 当容器中没有指定Bean时才会将其实例化。 25. @EnableConfigurationProperties: 开启配置文件注入功能。 26. @ConfigurationProperties: 把配置文件中的属性值注入到Bean中。 27. @EnableAsync: 开启异步任务支持。 以上就是 Spring Boot 最核心的27个注解,熟练掌握这些注解,将有助于编写完整的 Web 应用程序。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值