Spring mvc中@RequestMapping 6个基本用法

spring mvc中的@RequestMapping的用法。  

1)最基本的,方法级别上应用,例如:

Java代码

  1. @RequestMapping(value="/departments")
  2. public String simplePattern(){
  3. System.out.println("simplePattern method was called");
  4. return "someResult";
  5. }
  6. 则访问http://localhost/xxxx/departments的时候,会调用 simplePattern方法了  

    2) 参数绑定

Java代码

  1. @RequestMapping(value="/departments")
  2. public String findDepatment(
  3. @RequestParam("departmentId") String departmentId){
  4. System.out.println("Find department with ID: " + departmentId);
  5. return "someResult";
  6. }

形如这样的访问形式:  
 /departments?departmentId=23就可以触发访问findDepatment方法了  

3 REST风格的参数

Java代码

  1. @RequestMapping(value="/departments/{departmentId}")
  2. public String findDepatment(@PathVariable String departmentId){
  3. System.out.println("Find department with ID: " + departmentId);
  4. return "someResult";
  5. }

形如REST风格的地址访问,比如:  
/departments/23,其中用(@PathVariable接收rest风格的参数  

4 REST风格的参数绑定形式之2  
   先看例子,这个有点象之前的:

Java代码

  1. @RequestMapping(value="/departments/{departmentId}")
  2. public String findDepatmentAlternative(
  3. @PathVariable("departmentId") String someDepartmentId){
  4. System.out.println("Find department with ID: " + someDepartmentId);
  5. return "someResult";
  6. }

这个有点不同,就是接收形如/departments/23的URL访问,把23作为传入的departmetnId,,但是在实际的方法findDepatmentAlternative中,使用  
@PathVariable("departmentId") String someDepartmentId,将其绑定为  
someDepartmentId,所以这里someDepartmentId为23  

5 url中同时绑定多个id

Java代码

  1. @RequestMapping(value="/departments/{departmentId}/employees/{employeeId}")
  2. public String findEmployee(
  3. @PathVariable String departmentId,
  4. @PathVariable String employeeId){
  5. System.out.println("Find employee with ID: " + employeeId +
  6. " from department: " + departmentId);
  7. return "someResult";
  8. }  
       这个其实也比较好理解了。  

    6 支持正则表达式

Java代码

  1. @RequestMapping(value="/{textualPart:[a-z-]+}.{numericPart:[\\d]+}")
  2. public String regularExpression(
  3. @PathVariable String textualPart,
  4. @PathVariable String numericPart){
  5. System.out.println("Textual part: " + textualPart +
  6. ", numeric part: " + numericPart);
  7. return "someResult";
  8. }

比如如下的URL:/sometext.123,则输出:  
Textual part: sometext, numeric part: 123.

Spring mvc中@RequestMapping 6个基本用法的更多相关文章

  1. Spring mvc中@RequestMapping 6个基本用法小结

    Spring mvc中@RequestMapping 6个基本用法小结 小结下spring mvc中的@RequestMapping的用法. 1)最基本的,方法级别上应用,例如: @RequestMa ...

  2. 转:Spring mvc中@RequestMapping 6个基本用法小结

    Spring mvc中@RequestMapping 6个基本用法小结 发表于3年前(2013-02-17 19:58)   阅读(11698) | 评论(1) 13人收藏此文章, 我要收藏 赞3 4 ...

  3. Spring mvc中@RequestMapping 6个基本用法小结(转载)

    小结下spring mvc中的@RequestMapping的用法. 1)最基本的,方法级别上应用,例如: @RequestMapping(value="/departments" ...

  4. Spring mvc中@RequestMapping 6个基本用法整理

    继续整理,这个是前段时间用jsp开发的一个站点,说起来php程序员去做jsp程序确实有些小不适应,但是弄完后绝对对于这种强类型语言而比收获还是颇多的. 1,最基本的,方法级别上应用 @RequestM ...

  5. Spring MVC中@RequestMapping注解使用技巧(转)

    @RequestMapping是Spring Web应用程序中最常被用到的注解之一.这个注解会将HTTP请求映射到MVC和REST控制器的处理方法上. 在这篇文章中,你将会看到@RequestMapp ...

  6. Spring mvc中@RequestMapping 基本用法

    @RequestMapping(value="/departments") public String simplePattern(){ System.out.println(&q ...

  7. Spring MVC中@RequestParam/@RequestBody/@RequestHeader的用法收集(转)

    简介: handler method参数绑定常用的注解,我们根据他们处理的Request的不同内容部分分为四类:(主要讲解常用类型) A.处理requet uri部分(这里指uri template中 ...

  8. Spring MVC中的ModelMap作用及用法

    ModelMap的作用: ModelMap对象主要用于传递控制方法传递数据到结果页面.类似于request的setAttribute方法的作用. 所以我们要想在jsp页面获取数据,只要将数据放到Mod ...

  9. Spring MVC中各个filter的用法

    转载:http://blog.csdn.net/qyp1314/article/details/42023725 Spring MVC中各个filter的用法 2014-12-19 09:08 105 ...

随机推荐

  1. 神秘代理-Proxy

    前言: 代理模式作为常见的设计模式之一,在项目开发中不可或缺.本文就尝试着揭开代理的神秘面纱,也欢迎各路人批评指正! 1.如何实现代理: [假设有个关于汽车移动(move)的计时需求]设计:Movea ...

  2. 常用js归纳

    一.获取地址栏参数 /*根据name获取URL参数*/ function getQueryString(name) { var reg = new RegExp("(^|&)&quo ...

  3. CodeForces - 274B Zero Tree

    http://codeforces.com/problemset/problem/274/B 题目大意: 给定你一颗树,每个点上有权值. 现在你每次取出这颗树的一颗子树(即点集和边集均是原图的子集的连 ...

  4. css使absolute相对于父容器进行定位而不是以body(为什么绝对定位(absolute)的父级元素必须是相对定位(relative))

    借知乎的回答如下解释: 首先,我想告诉你的是,如果父级元素是绝对定位(absolute)或者没有设置,里面的绝对定位(absolute)自动以body定位.这句话是错的.正确的是:只要父级元素设了po ...

  5. chorme浏览器调试Android设备

    Android设备开启开发者模式,并打开USB调试: 接着在Android设备上运行项目 在chrome浏览器打开F12: 在Remote devices里即可调试页面. ! 一般需要FQ

  6. HDU 3669 Cross the Wall

    题目大意 给定 \(N\) 个矩形的宽和高, \((h_1, w_1), (h_2, w_2), \dots, (h_n w_n)\) . 现需要确定 \(k\) (\(k \le K\), \(K\ ...

  7. svn 图标不显示

    1.判断注册表里面是否有 SVN图标信息 方法:输入:win+R,输入regedit,调出注册表信息,按下Ctrl+F,在注册表里搜索"ShellIconOverlayIdentifiers ...

  8. split分割大文件--包含通过awk按规则分割文件到对应子文件

    当对一个大文件进行传输或者分析的时候,一个可以参考的办法是先通过split对文件进行分割,再对每个子文件进行处理,如果需要合并再进行合并. split函数可以按文件大小或者行数来进行分割. -a :  ...

  9. 如何使用git命令添加文件和提交文件

    1.进入指定文件夹内,启动 git bash here 2. 初始化文件夹 git init 3.开始添加文件 所有文件添加方法 git add . 单个文件添加方法 git add *.* 例如我的 ...

  10. java对象与XML相互转化

    起因 最近在公司做了一次webservice相关的任务,其中我最敢兴趣的就是webservice接受到XML对应的流以后是如何方便的转化成java对象,而java对象又是如何生成对应的XML的. 目的 ...