当前位置: 首页 > news >正文

@RequestMapping对不同参数的接收方式

1、简单参数

1、参数名与形参变量名相同,定义形参即可接收参数,且会自动进行类型转换。

@RequestMapping("/simple")public  String simpleParam(String name,int age){String username = name;int userAge = age;System.out.println(username+"========"+userAge);return  "OK";}

postman请求:

2、参数名与形参变量名不同,用requestParam

@RequestMapping("/simple2")public  String simpleParam2(@RequestParam(value = "name",required = false) String s_name, @RequestParam(name = "age") int s_age){String username = s_name;int userAge = s_age;System.out.println(username+"========"+userAge);return  "OK";}

postman请求:

注意:@RequestParam的required默认为true,也就是说用@RequestParam指定的参数是必传项,否则报错。

2、实体参数

1、简单实体对象

请求参数名与形参对象属性名相同,定义POJO接收即可

public class User {String name;int age;//省略get和set方法,toString()}

@RequestMapping("/simplePojo")public String simplePojo(User user){System.out.println(user);return "OK";}

postman请求:

2、复杂实体对象

public class User {String name;int age;Address address;
}
public class Address {String province;String city;
}
@RequestMapping("/complexPojo")
public String complexPojo(User user){System.out.println(user);return "OK";
}

 postman请求:

3、数组参数

请求参数名与形参数组名称相同且请求参数为多个,定义数组类型形参即可接收参数

@RequestMapping("/arrayParam")
public String arrayParam(String[] hobby){System.out.println(Arrays.toString(hobby));return "OK";
}

postman请求:

4、集合参数

请求参数名与形参集合名称相同且请求参数为多个,@RequestParam绑定参数关系

@RequestMapping("/listParam")
public String listParam(@RequestParam List<String> hobby){System.out.println(hobby);return "OK";
}

postman请求:

5、日期参数

使用@DateTimeFormat注解完成日期参数格式转换

@RequestMapping("/dateParam")
public String dateParam(@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") LocalDateTime updateTime){System.out.println(updateTime);return "OK";
}

 postman请求:

6、JSON参数

JSON数据键名与形参对象属性名相同,定义POJO类型形参即可接收参数,需要使用@RequestBody标识

@RequestMapping("/jsonParam")public String jsonParam(@RequestBody User user){System.out.println(user);return "OK";}

postman请求:

7、路径参数

通过请求URL直接传递参数,使用 {......}来标识该路径参数,需要使用@PathVariable获取路径参数

@RequestMapping("/path/{id}")public String pathParam(@PathVariable(value = "id") Integer id){System.out.println(id);return "OK";}

postman请求:

多个路径参数:

@RequestMapping("/path/{id}/{name}")public String pathParam(@PathVariable(value = "id") Integer id,@PathVariable String name){System.out.println(id);System.out.println(name);return "OK";}

postman请求:

http://www.lryc.cn/news/464633.html

相关文章:

  • 机器学习_KNN(K近邻)算法_FaceBook_Location案例(附数据集下载链接)
  • 【str_replace替换导致的绕过】
  • 如何用AI大模型提升挖洞速度
  • 两个数列问题
  • python中堆的用法
  • 轮班管理新策略,提高效率与降低员工抱怨
  • spring-cloud-alibaba-nacos-config2023.0.1.*启动打印配置文件内容
  • 数据结构:二叉树、堆
  • hi3798mv100 linux 移植
  • Docker-Harbor概述及构建
  • 部署项目最新教程
  • linux证明变量扩展在路径名扩展之前执行
  • CentOS 7.9安装MySQL
  • MacOS虚拟机安装Windows停滞在“让我们为你连接到网络”,如何解决?
  • 黑马程序员Java笔记整理(day03)
  • centos7更换阿里云镜像源操作步骤及命令
  • 冲刺大厂 | 一个线程调用两次start()方法会出现什么现象?
  • leaflet(一)初始化地图
  • Unity开发Hololens项目
  • 立志最细,FreeRtos的中断管理(Interrupt Management)函数,详解!!!
  • 作业2-线性回归的Matlab代码实现
  • 用jQuery在canvas上绘制绝对定位的元素
  • Android中 tools:text 和 android:text区别
  • Wordpress GutenKit 插件 远程文件写入致RCE漏洞复现(CVE-2024-9234)
  • Redis历史漏洞未授权RCE复现
  • Greenhills学习总结
  • 【深入学习Redis丨第八篇】详解Redis数据持久化机制
  • 【27续】c++项目练习
  • Lazarus Query转EXCEL功能
  • AnaTraf | 深入探讨DNS流量分析:保障网络稳定性的关键