小结下spring mvc中的@RequestMapping的用法。

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

  1. @RequestMapping(value="/departments")
  2. public String simplePattern(){
  3. System.out.println("simplePattern method was called");
  4. return "someResult";
  5. }

则访问http://localhost/xxxx/departments的时候,会调用 simplePattern方法了

2) 参数绑定

  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风格的参数

  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 
   先看例子,这个有点象之前的:

  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

  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 支持正则表达式

  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 6个基本用法 spring mvc中的@RequestMapping的用法.  1)最基本的,方法级别上应用,例如: Java代码 @Reques ...

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

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

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

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

  6. Spring MVC 中的基于注解的 Controller(转载)

           终于来到了基于注解的 Spring MVC 了.之前我们所讲到的 handler,需要根据 url 并通过 HandlerMapping 来映射出相应的 handler 并调用相应的方法 ...

  7. Spring mvc中@RequestMapping 基本用法

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

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

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

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

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

随机推荐

  1. pyspider安装

    官方文档上说的比较简单: pip install pyspider 但是实际安装时还是有些问题导致无法成功. windows下安装 先安装PhantomJS 可以依照自己的开发平台选择不同的包进行下载 ...

  2. hessian接口参数,子类与父类不能有同名字段解决方法

    hessian默认是使用 com.caucho.hessian.io.JavaSerializer 序列化,同名字段子类字段值被赋值两次,最终用父类null值赋给了子类同名字段,解决方法就是 指定序列 ...

  3. Bus Hound 的使用方法

    背景: 最近在研究USB相关协议,需要对USB数据进行抓取分析,Bus Hound是个非常赞的工具,在此将其使用方法记录下来,以备下次快速上手使用. 正文: 主界面如下: 首先关注菜单栏三个选项: C ...

  4. 【bzoj1864】[ZJOI2006]三色二叉树

    题目描述 输入 仅有一行,不超过500000个字符,表示一个二叉树序列. 输出 输出文件也只有一行,包含两个数,依次表示最多和最少有多少个点能够被染成绿色. 样例输入 1122002010 样例输出 ...

  5. 第一节 HTML网页和CSS样式

    1. 第一行 <!DOCTYPE html> 表明网页使用的是HTML5版本 2. 网页的head内容,包含了 title,meta. 3. 网页的标题 title,注意这个显示在浏览器的 ...

  6. 创业15条经验总结:温饱之后,创业公司CEO如何树“三观”?

    都说创业改变命运,事实上不是,创业,时时刻刻,可能连“命”都保不住!创业公司最重要的只有“活下去”.满足了这个.才有资格谈其他.公司连饭都开不了,还谈什么其他?创业公司如果连生存问题都解决不了,高位的 ...

  7. 【PHP面向对象(OOP)编程入门教程】13.访问类型(public,protected,private)

    类型的访问修饰符允许开发人员对类成员的访问进行限制,这是PHP5的新特性,但却是OOP语言的一个好的特性.而且大多数OOP语言都已支持此特性.PHP5支持如下3种访问修饰符: public (公有的. ...

  8. Sublime多行编辑快捷键

    鼠标选中多行,按下 Ctrl Shift L (Command Shift L) 即可同时编辑这些行: 鼠标选中文本,反复按 CTRL D (Command D) 即可继续向下同时选中下一个相同的文本 ...

  9. javaweb项目中的WEB-INF与META-INF

    /WEB-INF 放置web应用程序配置文件.jsp页面.lib包.classes文件等. /META-INF java打jar包时,自动生成的一个文件夹.相当于一个信息包,目录中的文件和目录获得ja ...

  10. Understand:高效代码静态分析神器详解(转)

    之前用Windows系统,一直用source insight查看代码非常方便,但是年前换到mac下面,虽说很多东西都方便了,但是却没有了静态代码分析工具,很幸运,前段时间找到一款比source ins ...