博客
关于我
Spring MVC中@RequestMapping用法
阅读量:79 次
发布时间:2019-02-26

本文共 2019 字,大约阅读时间需要 6 分钟。

SpringMVC中@RequestMapping的使用详解

在SpringMVC开发中,@RequestMapping是一个非常重要的注解,它用于实现URL地址与请求资源之间的映射关系。本文将详细介绍@RequestMapping的使用方法及其在不同场景下的应用技巧。

1. 类级@RequestMapping的使用

@RequestMapping注解可以应用在类级别,这种情况下,所有方法所处理的请求都会以该映射路径作为父路径。以下是一个典型的示例:

@RequestMapping("/test")public class TestController {    @RequestMapping("/mm")    public String m() {        return "mm";    }}

在上述示例中,访问http://localhost:8080/项目名/test/mm.jsp将被映射到TestController类中的m()方法。此外,类级@RequestMapping还可以用于定义应用程序的前缀,例如:

2. 方法级@RequestMapping的使用

@RequestMapping也可以应用在方法级别,这种情况下,注解中的路径将作为特定方法的请求映射地址。以下是一个与类级RequestMapping一起使用的示例:

@RequestMapping("/mmm")public String mmm(@RequestParam(required=true, value="sid", defaultValue="100") String id) {    System.out.println("id = " + id);    return "mmm";}

在上述示例中,id参数是通过@RequestParam注解自动从URL中获取的。如果不指定required属性,默认会假设该参数是必需的。此外,还可以定义参数的默认值,以应对可能的缺失情况。

3. 获取实体对象的用法

SpringMVC支持通过方法参数接收表单数据,并将其自动封装为JavaBean对象。以下是一个接收Student实体对象的示例:

@RequestMapping("/m")public String m(@RequestBody Student student) {    System.out.println(student.getId());    System.out.println(student.getSname());    return "m";}

在这个示例中,@RequestBody注解会将HTTP请求体中的数据自动封装为Student对象,从而简化了前后端的数据传递流程。

4. 回调Servlet API的用法

SpringMVC允许开发者直接使用Servlet API中的HttpServletRequest和HttpServletResponse对象。以下是一个使用这些对象的示例:

@RequestMapping("/m")public void m(HttpServletRequest request, HttpServletResponse response) throws IOException {    String id = request.getParameter("id");    String sname = request.getParameter("sname");    String t_id = request.getParameter("t_id");        PrintWriter out = response.getWriter();    out.println(id + "  " + sname + "  " + t_id);    out.flush();    out.close();}

在这个示例中,request.getParameter()方法可以用来获取URL参数,response.getWriter()方法可以用来向客户端输出响应内容。

5. REST风格参数的使用

在RESTful风格中,URL路径参数可以直接映射到方法参数。以下是一个使用@PathVariable注解的示例:

@RequestMapping("/m01/{id}")public String m05(@PathVariable String id) {    System.out.println("id = " + id);    return "m01";}

在这个示例中,{id}路径参数会被自动映射到方法中的id参数,URL如http://localhost:8080/springmvc/m01/123会自动传递id=123的值。

转载地址:http://gacz.baihongyu.com/

你可能感兴趣的文章
RabbitMQ - 基于 SpringAMQP 带你实现五种消息队列模型
查看>>
php数组函数分析--array_column
查看>>
php数组去重复数据的小例子
查看>>
php数组实现:哈希 +双向链表
查看>>
PHP数组排序函数array_multisort()函数详解(二)
查看>>
php数组的几个函数和超全局变量
查看>>
PHP文件上传详解
查看>>
PHP文件锁
查看>>
php文本框输入制定文本,php – 当用户没有向文本框输入任何内容时...
查看>>
PHP时间戳和日期相互转换操作总结
查看>>
php时间戳知识点,php 时间戳函数总结与示例
查看>>
php更新数据库失败,php – 无法更新MySQL数据库
查看>>
php机器人聊天对话框,基于AIML的PHP聊天机器人
查看>>
PHP查找数组中最大值与最小值
查看>>
php查最大值,在PHP数组中查找最大值
查看>>
php标签筛选,关于PHP CodeIgniter框架中通过<a>标签和url做多条件分类筛选
查看>>
php根据年月日计算年龄
查看>>
RabbitMQ - 单机部署(超详细)
查看>>
php检查注册,PHP检查注册的电子邮件地址是一个’school.edu’地址
查看>>
php模拟发送GET和POST请求
查看>>