• 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 注解 

  • 相关阅读:
    在浏览器中输入url后执行的全过程
    自己搭建一个类似vue,实现响应式的原理
    关于vue是怎么放到服务器上运行的基于vue-cli3
    vue v-modal语法糖
    js中的Map和Set
    js的reduce方法
    vue双向绑定原理
    js对象原型-class类
    (二)仅仅通过Application监听用户行为及App的在线状态和在线时长
    (一)仅仅用ApplicationContext加载界面
  • 原文地址:https://www.cnblogs.com/heyboom/p/11312547.html
Copyright © 2020-2023  润新知