SpringMVC知识盘点及总结5@RequestMapping注解的params属性

2021/12/22 23:52:14

本文主要是介绍SpringMVC知识盘点及总结5@RequestMapping注解的params属性,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

@RequestMapping注解的params属性

知识点四、

    @RequestMapping注解的params属性:
    @RequestMapping注解的params属性通过请求的请求参数匹配请求映射
    @RequestMapping注解的params属性是一个字符串类型的数组,可以通过四种表达式设置请求参数和请求映射的匹配关系

    "param”:要求请求映射所匹配的请求必须携带param请求参数,例如username
    "!param”:要求请求映射所匹配的请求必须不能携带param请求参数,例如!username
    "param=value":要求请求映射所匹配的请求必须携带param请求参数且param=value,例如username=admin
    "param!=value":要求请求映射所匹配的请求必须携带param请求参数但是param!=value,例如password!=123456

练习测试一下:
        1. //测试必须携带username请求参数
      @RequestMapping(value = "/testParamsAndHeaders",
                params = {"username")
          public  String testParamsAndHeaders(){
              return "success";
          }
        如果不携带username浏览器会报400错误:Parameter conditions "username" not met for actual request parameters:
     
        这句话的意思是:实际的请求参数不满足参数请求条件"username",即没有该参数

        当携带username之后,访问即成功
 <a th:href="@{/hello/testParamsAndHeaders?username='张三'}" >测试RequestMapping注解的Params属性</a>

        此处需要注意,在idea2021版本以下,在Thymeleaf中问号传参的问号会标红(2021版本不标红),
        标准写法:使用小括号来传参
1  <a th:href="@{/hello/testParamsAndHeaders(username='张三')}" >测试RequestMapping注解的Params属性</a>

        2.同理测试不能携带username参数:
1          @RequestMapping(value = "/testParamsAndHeaders",
2                         params = {"!username")
3                 public  String testParamsAndHeaders(){
4                     return "success";
5                 }


<a th:href="@{/hello/testParamsAndHeaders?username='张三'}" >测试RequestMapping注解的Params属性</a>
        如果携带username参数浏览器会报与上面一样的400错误:
            Parameter conditions "username" not met for actual request parameters:

        3.接下来一起测试一下后两种吧!
1       @RequestMapping(value = "/testParamsAndHeaders",
2                     params = {"username=admin","password!=123456"})
3             public  String testParamsAndHeaders(){
4                 return "success";
5             }

         这个用来测试同时携带username和password请求参数,并且username的值必须为admin
         password的值不能是123456,必须同时满足条件才能访问成功。如果不成功,同样会报400错误

      

 


        

 

 

 

 


这篇关于SpringMVC知识盘点及总结5@RequestMapping注解的params属性的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!


扫一扫关注最新编程教程