@RequestMapping注解用法详解

之前案例中我们就已经使用过@RequestMapping注解了,但还有一些细节我还没讲到,所以在此将详细讲讲@RequestMapping注解的使用。

@RequestMapping

通过@RequestMapping注解可以定义不同的处理器映射规则。主要定义在方法之上,Controller类也可以使用。

1)URL路径映射

@RequestMapping("/xxx")

    或者

    @RequestMapping(value="/xxx")
    

      value的值是数组,所以可以将多个url映射到同一个方法上。例如:

      @RequestMapping(value={"/xx","/dd"})
      

        2)Controller类请求限定

        在class上添加@RequestMapping(url)指定通用请求前缀, 限制此类下的所有方法请求url必须以请求前缀开头,通过此方法对url进行分类管理。
        例如:@RequestMapping放在类名上边,设置请求前缀。

        @Controller
        @RequestMapping("/hello")
        public class HelloController {
        	...
        }
        

          以上设置之后,所有/appName/hello下的路径请求全部分配到此COntroller中处理。
          例如:

          @Controller
          @RequestMapping("/hello")
          public class HelloController {
          	@RequestMapping("/demo01.do")
          	public ModelAndView update(){
          		//返回视图
          		return new ModelAndView("jsp/hello");
          	}
          }
          

            当访问到 /appName/hello/demo01.do 时会返回jsp/hello视图

            3)限定请求方法

            可以使用该注解限定发送请求的方法

            限定为GET方法:@RequestMapping(method = RequestMethod.GET)

            修改以上案例:

            @Controller
            @RequestMapping("/hello")
            public class HelloController {
            	@RequestMapping(value="/demo01.do",method={RequestMethod.GET})
            	public ModelAndView update(){
            		//返回视图
            		return new ModelAndView("jsp/hello");
            	}
            }
            

              当使用post方式进行表单提交访问/appName/hello/demo01.do时会报错:
              在这里插入图片描述

              限定为post方法:@RequestMapping(method = RequestMethod.POST)

              修改案例为:

              @Controller
              @RequestMapping("/hello")
              public class HelloController {
              	@RequestMapping(value="/demo01.do",method={RequestMethod.POST})
              	public ModelAndView update(){
              		//返回视图
              		return new ModelAndView("jsp/hello");
              	}
              }
              

                当使用get方式访问时会报错:
                在这里插入图片描述

                注意,不要忘记请求中文乱码问题,大家须谨慎对待。

                版权声明:本文为CSDN博主「robona」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。 原文链接:https://blog.csdn.net/qq_34598667/article/details/84101767

                posted @ 2022-03-09 11:47  冰扬  阅读(617)  评论(0)    收藏  举报