浅析 @PathVariable 和 @RequestParam(转发,非原创)
浅析 原创 转发 RequestParam
2023-09-14 09:00:30 时间
首先 上两个地址:
地址①
http://localhost:8989/SSSP/emps?pageNo=2
地址②
http://localhost:8989/SSSP/emp/7
如果想获取地址①中的 pageNo的值 ‘2’ ,则使用 @RequestParam ,
如果想获取地址②中的 emp/7 中的 ‘7 ’ 则使用 @PathVariable
获取地址① 中的‘2’ 使用的 方法是如下
@RequestMapping("/emps") public String list(@RequestParam(value="pageNo",required=false, defaultValue="1")String pageNoStr,Map<String, Object>map){ int pageNo = 1; try { //对pageNo 的校验 pageNo = Integer.parseInt(pageNoStr); if(pageNo<1){ pageNo = 1; } } catch (Exception e) {} Page<Employee> page = employeeService.getPage(pageNo, 5); map.put("page",page); return "emp/list"; }
获取地址② 中的 ‘7’ 使用的方法是如下:
@RequestMapping(value="/emp/{id}",method=RequestMethod.GET) public String edit(@PathVariable("id")Integer id,Map<String , Object>map){ Employee employee = employeeService.getEmployee(id); List<Department> departments = departmentService.getAll(); map.put("employee", employee); map.put("departments", departments); return "emp/input"; }
大道理不讲 原理也不分析就记忆一点,那一点呢? 看‘这个符号‘?’
1. 若获取的入参的 参数 是下面这种形式 就使用 @requestParam 去获取 参数‘2’
/emps?pageNo=2
2. 若获取的入参的 参数 是下面这种形式 就使用 @PathVariable 去获取参数 ‘7’
/emp/7
RequestParam 汉语意思就是: 请求参数 顾名思义 就是获取参数的;
PathVariable 汉语意思是:路径变量,顾名思义,就是要获取一个url 地址中的一部分值,那一部分呢?
RequestMapping 上说明了@RequestMapping(value="/emp/{id}"),我就是想获取你URL地址 /emp/ 的后面的那个 {id}的。
so,就看‘?’ 若是想获取 ‘?’ 后面的pageNo 的值 ‘2’, 就使用RequestParam ,
若想获取的是url 地址的一部分 ‘7’ 就使用PathVariable ,
@PathVariable是用来获得请求url中的动态参数的。
转自:http://blog.csdn.net/chuck_kui/article/details/55506723
相关文章
- Android源码浅析(一)——VMware Workstation Pro和Ubuntu Kylin 16.04 LTS安装配置
- ActiveMQ 即时通讯服务 浅析
- Dubbo学习(一) Dubbo原理浅析
- 浅析C#深拷贝与浅拷贝
- Android Framework层——App启动过程浅析
- AIOps产品与架构浅析
- Apache工具包方法——Hex.encodeHexString(byte[] data)源码浅析
- class文件结构浅析(2)
- 浅析 Linux 文件 IO 读写
- localtunnel.me 原理流程浅析
- 浅析JAVA设计模式之工厂模式(一)
- 浅析 Pycharm 内存、cpu 占用率
- 远程桌面协议浅析(VNC/SPICE/RDP)
- 29.极具破坏力的DDoS:浅析其攻击及防御
- Go sync.Pool 浅析
- Linux 内存页表管理 浅析