Spring boot route Controller接收参数常用方法解析
Controller接收参数的常用方式总体可以分为三类。第一类是Get请求通过拼接url进行传递,第二类是Post请求通过请求体进行传递,第三类是通过请求头部进行参数传递。
1 @PathVariable接收参数
请求方式:localhost:7001/param/123
请求示例:
代码示例:
@GetMapping("{id}") public String getPathVariable(@PathVariable String id){ return "id="+id; }
2 @RequestParam接收参数
使用这个注解需要注意两个点,一是加了这个参数后则请求中必须传递这个参数,二是@RequestParam这个注解可以指定名字,请求参数必须和指定的这个名字相同,如果不指定,则默认为具体参数名。
请求方式:localhost:7001/param/getParam?myId=18
请求示例:
代码示例:
@GetMapping("getParam") public String getRequestParam(@RequestParam("myId") String id){ return "id="+id; }
3 无注解传参
这种方式和2对比,最大的区别就是这个参数不是必传的,请求路径上可以不传递。
请求方式:localhost:7001/param/getString?id=18
请求示例:
代码示例:
@GetMapping("getString") public String getString(String id){ return "id="+id; }
4 HttpServletRequest接收参数
请求方式:localhost:7001/param/getRequest?id=18
请求示例:
代码示例:
@GetMapping("getRequest") public String getRequest(HttpServletRequest request){ String id = request.getParameter("id"); return "id="+id; }
5 @RequestBody接收请求体参数
这种方式一般用来传递实体对象,加了这个注解后,参数也是必传的。
请求方式:{“id”:18}
请求示例:
代码示例:
@PostMapping("getBody") public String getBody(@RequestBody String id){ return "id="+id; }
6 @RequestHeader接收请求头参数
请求示例:
代码示例:
@PostMapping("getHeader") public String getHeader(@RequestHeader String id){ return "id="+id; }
此是spring-boot-route系列的第一篇文章,这个系列的文章都比较简单,主要目的就是为了帮助初次接触Spring Boot 的同学有一个系统的认识。
github:https://github.com/binzh303/spring-boot-route
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。
- 详解SpringBoot Controller接收参数的几种常用方式
- SpringBoot Controller Post接口单元测试示例
- 解决Spring Boot 正常启动后访问Controller提示404问题
- spring boot中controller的使用及url参数的获取方法
- Springboot 使用 JSR 303 对 Controller 控制层校验及 Service 服务层 AOP 校验 使用消息资源文件对消息国际化
- SpringBoot之Controller的使用详解
- Spring Boot(三)之找回熟悉的Controller,Service
- Spring Boot的Controller控制层和页面
相关文章
详解mybatis foreach collection示例
这篇文章主要介绍了详解mybatis foreach collection的相关资料,需要的朋友可以参考下2017-10-10Spring SpringMVC,Spring整合MyBatis 事务配置的详细流程
这篇文章给大家介绍SSM整合详细流程步骤 Spring SpringMVC,Spring整合MyBatis 事务配置,本文通过实例图文相结合给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧2020-10-10redis scan命令导致redis连接耗尽,线程上锁的解决
这篇文章主要介绍了redis scan命令导致redis连接耗尽,线程上锁的解决,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧2020-11-11
最新评论