不飞则已,一飞冲天;不鸣则已,一鸣惊人。这篇文章主要讲述RequestMapping_请求参数&
请求头相关的知识,希望能为你提供帮助。
params和headers支持简单的表达式:
【RequestMapping_请求参数&
请求头】--param1:表示请求必须包含名为param1的请求参数。
--!param1:表示请求不能包含名为param1的请求参数。
--param1 != value1:表示请求包含名为param1的参数,但其值不能为value1.
--{“param1=value1”,“param2”}:请求必须包含名为param1和param2的两个请求参数,且param1参数的值必须为value1。
实践:
SpringMVCTest.java:
![RequestMapping_请求参数&请求头](http://img.readke.com/220510/00303010Q-0.jpg)
文章图片
index.jsp:
![RequestMapping_请求参数&请求头](http://img.readke.com/220510/00303025M-1.jpg)
文章图片
运行结果:
![RequestMapping_请求参数&请求头](http://img.readke.com/220510/0030305b6-2.jpg)
文章图片
点击“Test ParamsAndheaders”,则:
![RequestMapping_请求参数&请求头](http://img.readke.com/220510/00303053S-3.jpg)
文章图片
报错的详细信息为:
1 警告: No matching handler method found for servlet request: path \'/springmvc/testParamsAndheaders\', method \'GET\', parameters map[\'username\' -> array< String> [\'xingxing\'], \'age\' -> array< String> [\'10\']]
因为在java代码中说了age不能等于10,如果把jsp代码中age的传入参数换为11,则结果如下:
![RequestMapping_请求参数&请求头](http://img.readke.com/220510/0030302Q8-4.jpg)
文章图片
可以运行。
假如把传入的参数中username属性删去,也会报错。运行如图:
![RequestMapping_请求参数&请求头](http://img.readke.com/220510/0030303617-5.jpg)
文章图片
然后,我们用谷歌浏览器打开这个网址,再用开发者工具。
![RequestMapping_请求参数&请求头](http://img.readke.com/220510/0030305518-6.jpg)
文章图片
然后,在SpringMVCTest.java中的@RequestMapping属性中加入headers={"Accept-Language=zh-CN,zh; q=0.9"}。
![RequestMapping_请求参数&请求头](http://img.readke.com/220510/00303013O-7.jpg)
文章图片
运行一下:
![RequestMapping_请求参数&请求头](http://img.readke.com/220510/00303050T-8.jpg)
文章图片
可以访问。
总结:可以使用params和headers来更精确地映射请求,params和headers支持简单的表达式。
推荐阅读
- RequestMapping_Ant 路径
- Android上一种效果奇好的混音方法介绍
- Android函数
- spring-boot-2.0.3不一样系列之源码篇 - run方法之createApplicationContext,绝对有值得你看的地方
- How to deploy kotlin in androidstudio?
- RequestMapping_请求方式
- RequestMapping注解_修饰类
- 深入理解Android之View的绘制流程
- HDU - 5406 CRB and Apple (费用流)