zoukankan      html  css  js  c++  java
  • SpringMVC听课笔记(三:使用@RequestMapping映射请求)

    1. Spring MVC使用 @RequestMapping 注解为控制器指定可以处理哪些URL请求

    2. 标注点:

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

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

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

    4. @RequestMapping除了可以用 请求URL 映射请求外(value),还可以使用  请求方法(method), 请求参数(params), 以及请求头(heads) 映射投射条件,它们之间是  “与” 的关系,联合使用多个条件可以使得请求映射更加精确化

    5. params 和 headers支持简单的表达式:

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

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

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

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

    6.例子

      

      @RequestMapping里面的url value值的反斜线  “/” 可加可不加

    7. @RequestMapping 还支持Ant风格的URL:

      -- ?     匹配文件名中一个字符

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

      -- **    匹配多层路径

    8. @PathVariable映射URL绑定的占位符

      -- 带占位符的URL是Spring3.0新增的功能,该功能在SpringMVC向REST目标挺进发展的过程中具有里程碑的意义

      -- 通过@PathVariable 可以将URL中占位符参数绑定到控制器处理方法的入参中: URL中的 {xxx} 占位符可以通过 @PathVariable("xxx") 绑定到操作方法的入参中

        

    9. REST(自己写的例子中暂时有错)

      1) REST风格的URL(左边是rest,右边是传统的)

      -- 新增:  /order  POST                 

      -- 修改:  /order/1  PUT                update?id=1

      -- 获取:  /order/1  GET     get?id=1

         -- 删除: /order/1  DELETE   delete?id=1

      2)html貌似只能发送get(a链接)和 post(表单)。如何发送PUT请求和DELETE请求呢?

        -- 需要在web.xml中配置 HiddenHttpMethodFilter

        -- 需要发送POST请求

        -- 需要在发送POST请求时携带一个 name="_method" 的隐藏域, value 为 DELETE 或者PUT

      3)在SpringMVC 的目标方法中如何得到id?

        -- 使用 @PathVariable 注解 

  • 相关阅读:
    rk3288的SDK修复cm3218光敏驱动bug
    UVA 12627
    用JDBC编程的执行时错误及其解决大全
    linux中文输入法
    树套树专题——bzoj 3110: [Zjoi2013] K大数查询 & 3236 [Ahoi2013] 作业 题解
    To Noob Json是什么鬼?
    2015.7.3, 杭州……产品级敏捷案例研究
    Java下拼接运行动态SQL语句
    spring mvc+ajax分页
    Linux开发环境搭建与使用——ubuntu更新设置
  • 原文地址:https://www.cnblogs.com/heyboom/p/11312547.html
Copyright © 2011-2022 走看看