博客
关于我
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/

你可能感兴趣的文章
python制作甘特图的基本知识(附Demo)
查看>>
python制作一个简单的服务器,【Python】 做一个简单的 http 服务器
查看>>
Python到底能做什么?它的优点在哪?
查看>>
python利用pytorch库导出图像分割算子
查看>>
python利用pyshark监听网卡来抓包其中pyshark中摸索的一些可用参数
查看>>
python利用excel分析过杀漏失
查看>>
python判断汉字数目
查看>>
python判断文件是空的,如果是空的,就删除
查看>>
python判断密码是否正确_python密码判断是否符合要求的方法
查看>>
python判断字符串包含中文_Python 判断字符串是否包含中文
查看>>
python删除第一行_Python 乱码指北:一行删掉根目录
查看>>
Python删除列表元素的三种方法
查看>>
python初步学习-python数据类型-集合(set)
查看>>
python列表生成字典_Python中将字典转换为列表的方法
查看>>
python列表对应元素合并为列表及判断一个列表是几维
查看>>
python列表去重复后按照顺序_从包含不可共元素的Python列表中删除重复元素,同时保留顺序?...
查看>>
python列表前几个_python之列表
查看>>
python列表元组
查看>>
Python列表/元组/字典和集合使用
查看>>
python列表 行列选择_python_pandas_dataframe_行列选择_切片操作
查看>>