SpringBoot普通参数与基本注解(@PathVariable、@RequestHeader、@RequestParam、@RequestBody)
基本注解
- @PathVariable(获取路径变量)
- @RequestParam(获取请求参数)
- @RequestHeader(获取请求头)
- @RequestBody(获取请求体[POST])
@PathVariable(获取路径变量)
index.html:
<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>基本注解测试</title>
</head>
<body>
测试基本注解:
<ul><li>@PathVariable(路径变量):<a href="user/3/pet/tom">user/3/pet/tom</a></li><li>@RequestParam(获取请求参数)</li><li>@RequestHeader(获取请求头)</li><li>@CookieValue(获取cookie值)</li><li>@RequestBody(获取请求体[POST])</li>
</ul>
</body>
</html>
ParameterTestController类:
@RestController
public class ParameterTestController {@GetMapping("user/{id}/pet/{petName}")//映射html中的链接地址——href="user/3/pet/tom"public Map<String,Object> getUser(@PathVariable() String id,//获取路径变量id的值@PathVariable() String petName,@PathVariable Map<String,String> pv){//获取链接中全部路径变量Map<String,Object> map=new HashMap<>();map.put("id",id);map.put("petName",petName);map.put("pv",pv);return map;}
}
结果:
@RequestParam(获取请求参数)
index.html
@RequestParam(获取请求参数)<a href="user/zhangsan?age=18&interests=basketball&interests=game">user/zhangsan?age=18&interests=basketball&interests=game</a>
ParameterTestController类添加:
@GetMapping("user/zhangsan")//映射html中的链接地址——href="user/zhangsan?age=18&interests=basketball&interests=game"public Map<String,Object> getUser2(@RequestParam("age") Integer age,@RequestParam("interests") List<String> interests,@RequestParam Map<String,String> params){Map<String,Object> map2=new HashMap<>();map2.put("age",age);map2.put("interests",interests);map2.put("params",params);return map2;}
结果:
@RequestHeader(获取请求头)
index. html:
@RequestHeader(获取请求头)<a href="user/RequestHeader">user/RequestHeader</a>
ParameterTestController类添加:
@GetMapping("user/RequestHeader")public Map<String,Object> getUser3(@RequestHeader("Accept") String Accept,@RequestHeader Map<String,String> header){Map<String,Object> map=new HashMap<>();map.put("Accept",Accept);map.put("header",header);return map;
结果:
@RequestBody(获取请求体[POST])
index.html
<form action="/save" method="post">测试@RequestBody获取数据 <br/>用户名:<input name="userName"/> <br>邮箱:<input name="email"/><input type="submit" value="提交"/>
</form>
ParameterTestController类添加:
@PostMapping("/save")public Map postMethod(@RequestBody String content){Map<String,Object> map = new HashMap<>();map.put("content",content);return map;}
结果:
SpringBoot普通参数与基本注解(@PathVariable、@RequestHeader、@RequestParam、@RequestBody)相关推荐
- @RequestParam @RequestBody @PathVariable 等参数绑定注解详解
文章主要讲解request 数据到handler method 参数数据的绑定所用到的注解和什么情形下使用. 简介: handler method 参数绑定常用的注解,我们根据他们处理的Request ...
- Spring MVC之@RequestParam @RequestBody @RequestHeader 等详解
引言: 接上一篇文章,对@RequestMapping进行地址映射讲解之后,该篇主要讲解request 数据到handler method 参数数据的绑定所用到的注解和什么情形下使用: 简介: han ...
- springboot统一异常处理类及注解参数为数组的写法
springboot统一异常处理类及注解参数为数组的写法 参考文章: (1)springboot统一异常处理类及注解参数为数组的写法 (2)https://www.cnblogs.com/zhucww ...
- 获取后端接口请求中的参数(@PathVariable,@RequestParam,@RequestBody区别,使用postman请求
获取参数 SpringBoot提供的获取参数注解包括:@PathVariable,@RequestParam,@RequestBody,三者的区别如下表: 一:后端接口什么都不加 postman请求后 ...
- Spring Boot普通参数与基本注解
1. 注解 @PathVariable.(路径变量) @RequestHeader.(获取请求头) @ModelAttribute.(获取request域属性) @RequestParam.(获取请求 ...
- Springboot @Validated参数校验
简单使用 Java API规范(JSR303)定义了Bean校验的标准validation-api,但没有提供实现.hibernate validation是对这个规范的实现,并增加了校验注解如@Em ...
- springboot处理参数再转发请求_SpringBoot是如何解析HTTP参数的
前言 前几天笔者在写Rest接口的时候,看到了一种传值方式是以前没有写过的,就萌生了一探究竟的想法.在此之前,有篇文章曾涉及到这个话题,但那篇文章着重于处理流程的分析,并未深入. 本文重点来看几种传参 ...
- @RequestParam,@RequestBody,@PathVariable注解还分不清吗?
前言 在使用 SpringMVC 开发时,经常遇到前端传递的各种参数,比如 form 表单,JSON 数据,String[] 数组,再或者是最常见的 String 字符串等等,总之大部分场景都是在标题 ...
- 在SpringBoot项目中,自定义注解+拦截器优雅的实现敏感数据的加解密!
在实际生产项目中,经常需要对如身份证信息.手机号.真实姓名等的敏感数据进行加密数据库存储,但在业务代码中对敏感信息进行手动加解密则十分不优雅,甚至会存在错加密.漏加密.业务人员需要知道实际的加密规则等 ...
最新文章
- 我要阻止做java开发的男朋友去创业型公司工作吗?
- NHibernate中的SchemaExport
- 【Elasticsearch】Fielddata is disabled on text field fielddata=true
- uva1025 动态规划
- (七)、Java异常类型及处理
- k8s部署elasticsearch(包含数据挂载VOLUME)
- 机器人学导论复习笔记
- OSChina 周五乱弹 —— 男友手机上存了好多鸡的照片
- LSA和 PLSA学习笔记
- 上海浮生记——溜达出来的美食
- 基于docker搭建l2tp
- linux mint卸载桌面环境,在Ubuntu系统中安装最新Cinnamon桌面环境,包括启用及卸载...
- 基于Pushlet实现的网站消息推送
- 篮球比赛24秒能不能用计算机控制,请问篮球24秒倒计时牌哪家是全金属面板的?...
- BCG与阿里研究院等联合揭秘中国互联网经济:成功的关键是什么?
- Android基本常识、技术
- 光纤通信系统简要复习
- 横版2D小游戏开局_学习整理记录
- 对3D显示技术的初步分类
- matlab 路由表,实验1静态ECMP的浮动静态路由配置
热门文章
- IT软件技术人员的职位路线(从程序员到技术总监) - 部门管理经验谈(转)
- python万年历函数输入某一年某一月_Python自定义函数计算给定日期是该年第几天的方法示例...
- 如何实现电脑远程操控西门子触摸屏画面
- RoboCupRescue心得
- 微软最走运、最倒霉的十个瞬间
- APP加密,ios代码混淆工具,虚拟化技术 适用于移动应用程序的虚拟化加密软件
- linux执行lsof命令_linux系统 lsof命令详解
- AUTOCAD——偏移命令、移动命令
- html基本样式及表格
- 存储卡中各种文件夹用处