文档章节

SpringMVC中 @RequestMapping的6种基本用法小结

迪拜驻开源中国大使
 迪拜驻开源中国大使
发布于 2015/04/22 23:43
字数 388
阅读 7
收藏 0

阿里云携手百名商业领袖、技术大咖,带您一探行进中的数字新基建!>>>

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

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

Java代码  

@RequestMapping(value="/departments")  

public String simplePattern(){  

  System.out.println("simplePattern method was called");  

  return "someResult";  

}  

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

2) 参数绑定 

Java代码  

@RequestMapping(value="/departments")  

public String findDepatment(  

  @RequestParam("departmentId") String departmentId){  

    System.out.println("Find department with ID: " + departmentId);  

    return "someResult";  

  形如这样的访问形式: 

   /departments?departmentId=23就可以触发访问findDepatment方法了 

3 ) REST风格的参数 

Java代码  

@RequestMapping(value="/departments/{departmentId}")  

public String findDepatment(@PathVariable String departmentId){  

  System.out.println("Find department with ID: " + departmentId);  

  return "someResult";  

}  

形如REST风格的地址访问,比如: 

/departments/23,其中用(@PathVariable接收rest风格的参数 

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

Java代码  

@RequestMapping(value="/departments/{departmentId}")  

public String findDepatmentAlternative(  

  @PathVariable("departmentId") String someDepartmentId){  

    System.out.println("Find department with ID: " + someDepartmentId);  

    return "someResult";  

}  

 这个有点不同,就是接收形如/departments/23的URL访问,把23作为传入的departmetnId,,但是在实际的方法findDepatmentAlternative中,使用 

@PathVariable("departmentId") String someDepartmentId,将其绑定为 

someDepartmentId,所以这里someDepartmentId为23 

5) url中同时绑定多个id 

Java代码  

@RequestMapping(value="/departments/{departmentId}/employees/{employeeId}")  

public String findEmployee( @PathVariable String departmentId,  @PathVariable String employeeId){  

    System.out.println("Find employee with ID: " + employeeId +   " from department: " + departmentId);  

    return "someResult";  

}  

 这个其实也比较好理解了。 

6 )支持正则表达式 

Java代码  

@RequestMapping(value="/{textualPart:[a-z-]+}.{numericPart:[\\d]+}")  

public String regularExpression( @PathVariable String textualPart,  @PathVariable String numericPart){  

    System.out.println("Textual part: " + textualPart +   ", numeric part: " + numericPart);  

    return "someResult";  

}  

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

Textual part: sometext, numeric part: 123. 

本文转载自:http://www.2cto.com/kf/201302/189407.html

迪拜驻开源中国大使
粉丝 6
博文 33
码字总数 3160
作品 0
大连
程序员
私信 提问
加载中

评论(0)

注解之 @RestController 和 @RequestMapping

Controller 是 Spring 中最基本的组件,主要处理用户交互,一般每个业务逻辑都会有一个 Controller,供用户请求接口进行数据访问;@RequestMapping 注解用于绑定URI到具体处理器。二者相辅相...

osc_rcsk5srk
2019/05/11
6
0
Spring mvc中@RequestMapping 6个基本用法小结

小结下spring mvc中的@RequestMapping的用法。 1)最基本的,方法级别上应用,例如: Java代码 @RequestMapping(value="/departments") public String simplePattern(){ System.out.println(......

again-Y
2013/06/24
77
0
Spring mvc中@RequestMapping 6个基本用法小结

小结下spring mvc中的@RequestMapping的用法。 1)最基本的,方法级别上应用,例如: @RequestMapping(value="/departments") public String simplePattern(){ System.out.println("simpleP......

迷途树袋熊
2013/02/21
358
0
Spring mvc中@RequestMapping 6个基本用法小结

小结下spring mvc中的@RequestMapping的用法。 1)最基本的,方法级别上应用,例如: @RequestMapping(value="/departments") public String simplePattern(){ System.out.println("simpleP......

jackyrong
2013/02/17
3W
2
springMVC中接收请求参数&&数据转发

1. 接收请求参数 #### 1.1. 【不推荐】 通过HttpServletRequest获取请求参数 假设存在: <form action="handle_login.do" method="POST"> 则在控制器中: @RequestMapping("handle_login.do......

osc_ertc0ko2
2019/01/21
1
0

没有更多内容

加载失败,请刷新页面

加载更多

URL 中文链接 编码错误 完美解决

直接上代码 str = "%25E4%25B8%25AD%25E6%2596%2587";console.log(str);str =decodeURIComponent(decodeURIComponent(str));console.log(str); 输出结果 %25E4%25B8%25AD%25E6%2596%25......

放只虎归个山
今天
17
0
.NET中小数,浮点数和双精度之间的区别? - Difference between decimal, float and double in .NET?

问题: What is the difference between decimal , float and double in .NET? .NET中的decimal , float和double float什么区别? When would someone use one of these? 有人什么时候会使用......

fyin1314
今天
22
0
如何找出Windows上正在侦听端口的进程? - How can you find out which process is listening on a port on Windows?

问题: 如何找出Windows上正在侦听端口的进程? 解决方案: 参考一: https://stackoom.com/question/CXO/如何找出Windows上正在侦听端口的进程 参考二: https://oldbug.net/q/CXO/How-can...

技术盛宴
今天
10
0
OSChina 周三乱弹 —— 一家动物都快饿成标本了~

@黑觉非常君 :前天晚上9点开始睡觉,睡到昨天上午8点起床,昨天下午2点又睡,睡到下午7点多,晚上10点又困了,又睡,睡到今天上午8点,中途没醒过,怎么这么能睡,是不是快挂了。 能睡不是好...

小小编辑
今天
26
0
神剧推荐全剧最污片段精剪

神剧推荐,全剧最污片段精剪 豆瓣评分最高,脑洞最大,脑回路最曲折,恶搞无数经典,没有一条差评的神剧 整个系列完整版 到这里观看

a57571735
今天
22
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部