springMVC学习总结(二)路径映射和请求方法限定

一、路径映射

无参数的访问路径

  • 对springmvc项目的访问路径,是由根路径和子路径组成;在注解式开发中,根路径标注在类名之上,子路径标注在方法名之上,例:

     @Controller
    @RequestMapping(value = "/rootpath")
    public class Demo01Controller {
    @RequestMapping(value = "/childpath.action")
    public ModelAndView test(){
    System.out.println("访问成功!");
    ModelAndView mv = new ModelAndView();
    mv.addObject("message", "测试成功");
    mv.setViewName("hello");
    return mv;
    }
    }

在这个例子中:

根路径是类名上方的 RequestMapping(value = "/rootpath") ;

方法名上方的 RequestMapping(value = "/rootpath")

因此该方法的访问路径是:http://localhost:8080/rootpath/childpath.action

路径中有参数的访问路径

  • 如果我们想通过url传递一个或多个参数到后台,在不考虑安全问题的情况下可以使用url的方式携带参数访问,比如我们要获取一个id值,我们后台编码如下:

     @Controller
    @RequestMapping(value = "/rootpath",method = RequestMethod.GET)
    public class Demo01Controller { @RequestMapping(value = "/childpath/{id}")
    public ModelAndView test(@PathVariable String id){
    System.out.println("get提交的参数为:"+id);
    ModelAndView mv = new ModelAndView();
    mv.addObject("message", "测试成功");
    mv.setViewName("hello");
    return mv;
    }
    }

    此时的访问路径是: http://localhost:8080/rootpath/childpath.action/3.action

    这个url中传递的参数值是 id=1

    • 当有多个参数的时候,只要方法的参数名与路径中的参数命名一一对应便可一一对应的取到值,如:

        @Controller
      @RequestMapping(value = "/rootpath",method = RequestMethod.GET)
      public class Demo01Controller { @RequestMapping(value = "/childpath/{id}/{username}")
      public ModelAndView test(@PathVariable String id,@PathVariable String username){
      System.out.println("get提交的参数id为:"+id+"用户名为:"+username);
      ModelAndView mv = new ModelAndView();
      mv.addObject("message", "测试成功");
      mv.setViewName("hello");
      return mv;
      }
      }

    此时的访问路径是: http://localhost:8080/rootpath/childpath.action/3/sunwukong.action

    这个url中传递的参数值是 id=1,用户名为:sunwukong

二、方法限定

  • 方法的限定编码位置同样在注解@RequestMapping()中,如下图:

    方法名上方的: method = RequestMethod.GET 是对请求方法的限定,可选择的常用方法有以下几种:

springMVC学习总结(二)路径映射和请求方法限定的更多相关文章

  1. springmvc学习(二)——使用RequestMapper请求映射

    本次内容是@RequestMapping,后面会有实例代码 Spring MVC 使用 @RequestMapping 注解为控制器指定可以处理哪些 URL 请求在控制器的类定义及方法定义处都可标注@ ...

  2. (转)SpringMVC学习(十二)——SpringMVC中的拦截器

    http://blog.csdn.net/yerenyuan_pku/article/details/72567761 SpringMVC的处理器拦截器类似于Servlet开发中的过滤器Filter, ...

  3. SpringMVC学习记录二——非注解和注解的处理器映射器和适配器

    3      非注解的处理器映射器和适配器 3.1      非注解的处理器映射器 处理器映射器: org.springframework.web.servlet.handler.BeanNameUr ...

  4. springMVC学习笔记(二)-----注解和非注解入门小程序

    最近一直在做一个电商的项目,周末加班,忙的都没有时间更新博客了.终于在上周五上线了,可以轻松几天了.闲话不扯淡了,继续谈谈springMvc的学习. 现在,用到SpringMvc的大部分使用全注解配置 ...

  5. SpringMVC学习笔记二:常用注解

    转载请注明原文地址:http://www.cnblogs.com/ygj0930/p/6831976.html  参考:http://www.cnblogs.com/leskang/p/5445698 ...

  6. SpringMVC学习(二)———— 参数绑定

    一.参数绑定 1.1.什么是参数绑定? 客户在浏览器端会提交一些参数到服务器端,比如用户的登录等,就会传username 和 password过来,springmvc则通过参数绑定组件将请求参数的内容 ...

  7. SpringMVC 学习笔记(二) @RequestMapping、@PathVariable等注解

    版权声明:本文为博主原创文章,博客地址:http://blog.csdn.net/a67474506?viewmode=contents 1.1. @RequestMapping映射请求 Spring ...

  8. 【SpringMVC】SpringMVC系列2之@RequestMapping 映射约束请求

    @RequestMapping 映射约束请求 2.1.映射请求URL Spring MVC 使用 @RequestMapping 注解为控制器指定可以处理哪些 URL 请求,在控制器的类定义及方法定义 ...

  9. Spring MVC 根据请求方法限定:请求方法(四)

    请求方法 说明 GET 使用GET方法检索一个表述(representation)——也就是对资源的描述.多次执行同一GET请求,不会对系统造成影响,GET方法具有幂等性[指多个相同请求返回相同的结果 ...

随机推荐

  1. 反馈法学习设计模式(一)——策略模式Strategy Pattern

    简介(Introduction) 之前学习Java8实战时,遇到一个很好的策略模式示例.便想着借着这个示例结合反馈式的方法来,学习策略设计模式,也以便后面反复琢磨学习. 首先我们通过练习,逐步写出符合 ...

  2. document.body.scrollTop 值总为0

    http://www.jb51.net/article/21168.htm 页面具有 DTD(或者说指定了 DOCTYPE)时,使用 document.documentElement.     做页面 ...

  3. display: run-in

    If a sibling block box (that does not float and is not absolutely positioned) follows the run-in box ...

  4. JAVASE高级2

    反射概述 什么是反射? 反射的的概念是有smith1982年首次提出的,zhuy主要是指程序可以访问.检测和修改它本身状态或行为的一种能力. JAVA反射机制是运行状态中,对于任意一个类,都能够知道这 ...

  5. Pycharm,Python原生IDE?

    老套路,安装和使用(Win7x64.JDK神马滴早已装好). 1.安装 网上下下来后就这东西 Next D盘路径 我选择.我喜欢 开装 好慢,以后用光纤 O了 桌面小图标 2.使用 以管理员身份打开软 ...

  6. python3 re正则匹配数据获取案例

    # coding=utf-8import requestsimport jsonfrom retrying import retryimport re class TyY: def __init__( ...

  7. java中自动装箱带来的性能问题

    之前没有特别注意自动封装所带来的性能问题,今天看了effective java,实验了一下,结果大吃一惊: 考虑下面这段代码: public static void main(String args[ ...

  8. Windows常用shell命令大全

    Windows常用shell命令大全 基于鼠标操作的后果就是OS界面外观发生改变, 就得多花学习成本.更主要的是基于界面引导Path与命令行直达速度是难以比拟的.另外Geek很大一部分是键盘控,而非鼠 ...

  9. Mybatis框架的搭建和基本使用方法

    1.1MyBatis的下载 最新yBatis可以在github官网上下载: https://github.com/mybatis/mybatis-3 1.2 Mybatis Jar包 1.3MyBat ...

  10. vue新手入门——vue-cli搭建

    首先说明,以下内容vue官网都有文档,如果觉得麻烦啰嗦,请移步至 安装-vue.js . 准备工作: 1.下载并安装node环境,一般情况下安装好node之后,npm也会安装好.具体安装的话,百度大概 ...