• @RequestMapping定义不同的处理器映射规则


      

      通过@RequestMapping注解可以定义不同的处理器映射规则。

     

    1. URL路径映射

    @RequestMapping(value="item")或@RequestMapping("/item")

    value的值是数组,可以将多个url映射到同一个方法

    /**
    
     * 查询商品列表
    
     * @return
    
     */
    
    @RequestMapping(value = { "itemList", "itemListAll" })
    
    public ModelAndView queryItemList() {
    
        // 查询商品数据
    
        List<Item> list = this.itemService.queryItemList();
    
        // 创建ModelAndView,设置逻辑视图名
    
        ModelAndView mv = new ModelAndView("itemList");
    
    
        // 把商品数据放到模型中
    
        mv.addObject("itemList", list);
    
        return mv;
    
    }

    2. 添加在类上面

    在class上添加@RequestMapping(url)指定通用请求前缀, 限制此类下的所有方法请求url必须以请求前缀开头

    可以使用此方法对url进行分类管理,如下图:

     

    此时需要进入queryItemList()方法的请求url为:

    http://127.0.0.1:8080/springmvc-web2/item/itemList.action

    或者

    http://127.0.0.1:8080/springmvc-web2/item/itemListAll.action

      

    3. 请求方法限定

    除了可以对url进行设置,还可以限定请求进来的方法

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

    如果通过POST访问则报错:

    HTTP Status 405 - Request method 'POST' not supported

    例如:

    @RequestMapping(value = "itemList",method = RequestMethod.POST)
    •   限定POST方法
    @RequestMapping(method = RequestMethod.POST)

    如果通过GET访问则报错:

    HTTP Status 405 - Request method 'GET' not supported

    •   GET和POST都可以
    @RequestMapping(method = {RequestMethod.GET,RequestMethod.POST})
  • 相关阅读:
    Linux 服务器 个人常用操作命令记录
    Thinkphp5.0 自定义命令command的使用
    vue初学之node.js安装、cnpm安装、vue初体验
    php实现在不同国家显示网站的不同语言版本
    array_map、array_walk、array_filter三个函数的区别
    实现简单点赞功能
    SQL语言-----数据操作
    SQL语言
    MySQL高可用架构之Keepalived+主从架构部署
    MyCAT源码分析——分析环境部署
  • 原文地址:https://www.cnblogs.com/qlqwjy/p/8516935.html
Copyright © 2020-2023  润新知