• SpringMVC_RequestMapping


    @RequestMapping修饰

    - SpringMVC使用 @RequestMapping 注解为控制器指定可以处理哪些URL请求

    - 在控制器的类定义及方法定义处都可标注

    - @RequestMapping:

    类定义处:提供初步的请求映射信息,相对于WEB应用的根目录

    方法处:提供进一步的细分映射信息。相对于类定义处的URL信息,若类定义处未标注 @RequestMapping ,则方法处标注的URL相对于WEB应用的根目录。

    - DispatcherServlet 截获请求后,就通过控制器上的 @RequestMapping 提供的映射信息确定请求所对应的处理方法。

    package com.smart.handlers;
    
    import org.springframework.stereotype.Controller;
    import org.springframework.web.bind.annotation.RequestMapping;
    
    /**
     * @author chenpeng
     * @date 2018/6/9 18:24
     */
    @Controller(value = "/springMVC")
    public class SpringMVCTest {
        private final String SUCCESS = "success";
    
        /**
         * 1、@RequestMapping 除了修饰方法还可以修饰类
         * 2、
         * 1)、类定义处:提供初步的请求映射信息,相当于 WEB 应用的根目录
         * 2)、方法处:挺浓进一步的细分映射信息,
         *      相对于类定义处的URL信息,若类定义处未标注 @RequestMapping ,则方法处标注的URL相对于WEB应用的根目录。
         * @return
         */
        @RequestMapping(value = "/testRequestMapping")
        public String testRequestMapping(){
            System.out.println("testRequestMapping");
            return SUCCESS;
        }
    
    
    }
    

    @RequestMapping请求方式

    — @RequestMapping除了可以使用请求URL映射请求外,还可以使用请求方法、请求参数以及请求头映射请求

    — @RequestMapping 的value、method、params 及 heads 分别表示请求URL、请求方法、请求参数及请求头的映射条件,他们之间的关系是 的关系,联合使用多个条件,可以让请求映射更加精确化

    — params和heads支持简单的表达式

        - param1:表示请求必须包含名为param1的请求参数

        - !param1:表示请求不能包含名为param1的请求参数

        - param1 != value1: 表示请求包含名为param1的请求参数,但是其值不能为value1

       - {“param1 = value1”,“param2”}:请求必须包含名为param1和param2的两个请求参数,且param1的值必须为value1

    package com.smart.handlers;
    
    import org.springframework.stereotype.Controller;
    import org.springframework.web.bind.annotation.RequestMapping;
    import org.springframework.web.bind.annotation.RequestMethod;
    import org.springframework.web.servlet.ModelAndView;
    
    /**
     * @author chenpeng
     * @date 2018/6/9 18:24
     */
    @Controller
    @RequestMapping("/springmvc")
    public class SpringMVCTest {
        private  final String SUCCESS = "success";
    
        /**
         * 1、@RequestMapping 除了修饰方法还可以修饰类
         * 2、
         * 1)、类定义处:提供初步的请求映射信息,相当于 WEB 应用的根目录
         * 2)、方法处:挺浓进一步的细分映射信息,
         *      相对于类定义处的URL信息,若类定义处未标注 @RequestMapping ,则方法处标注的URL相对于WEB应用的根目录。
         * @return
         */
        @RequestMapping("/testRequestMapping")
        public String testRequestMapping(){
            System.out.println("testRequestMapping");
               return SUCCESS;
        }
    
        /**
         * 常用:使用method属性来指定请求方式
         * @return
         */
        @RequestMapping(value = "/testMethod",method = RequestMethod.POST)
        public String testMethod(){
            System.out.println("testMethod");
            return SUCCESS;
        }
    
        /**
         * 了解:可以使用 params 和 headers 来更加精确的映射请求,params 和 headers支持简单的表达式
         * @return
         */
        @RequestMapping(value = "testParmsAndHeaders",
                        params = {"username","age!=10"},
                        headers = {"Accept-Language=zh-CN,zh;q=0.8"})
        public String testParmsAndHeaders(){
            System.out.println("testParmsAndHeaders");
            return SUCCESS;
        }
    }


    Ant风格资源地址

    Ant风格资源地址支持3种匹配符:

    - ?:匹配文件中的一个字符

    - * :匹配文件中的任意字符

    - ** :匹配多层路径

    @RequestMapping还支持Ant风格的URL


  • 相关阅读:
    redis的常用命令及php-redis的使用
    mysql数据库基本操作
    php接口数据安全解决方案
    如何防止api接口被恶意调用或攻击
    virtualBox安装及调试
    PHP常用扩展
    memcached安装与应用
    Jmeter的基础使用(4)——添加服务器的监控
    Jmeter的基础使用(3)——使用实操
    Jmeter的基础使用(2)——线程的添加以及基本使用
  • 原文地址:https://www.cnblogs.com/huangzhe1515023110/p/9276068.html
Copyright © 2020-2023  润新知