Spring MVC 使用 @RequestMapping 注解为控制器指定可 以处理哪些 URL 请求

    `   /*** 1. @RequestMapping() 除了修饰方法, 还可以修饰类* 2.1 类定义处: *      提供初步的请求映射信息. 相对于 web应用的根目录* 2.2 方法处: *      提供进一步的细分映射信息, 相对于类定义处的 URL. 若类定义处未标注@RequestMapping 则*      方法处标注的URL相对于WEB应用的根目录* @return*/
@RequestMapping("/testRequestMapping")
public String testRequestMapping() {System.out.println("testRequestMapping...");return SUCCESS;
}`

@RequestMapping 的 value、method、params 及 heads 分别表示请求 URL、请求方法、请求参数及请求头的映射条 件

/*** 使用method属性指定请求方式 (常用), value指定请求的URL*/@RequestMapping(value="/testMethod" , method=RequestMethod.POST)public String testMethod() {System.out.println("testMethod...");return SUCCESS;}

@PathVariable 映射 URL 绑定的占位符

/*** @PathVariable() 可以来映射 URL 中的占位符到目标方法的参数中* @param id* @return*/@RequestMapping("/testPathVariable/{id}")public String testPathVariable(@PathVariable("id") Integer id) {System.out.println("testPathVariable: " + id);return SUCCESS;}

浏览器 form 表单只支持 GET与 POST 请求,而DELETE、PUT 等 method 并不支持,通过 HiddenHttpMethodFilter可以将这些请求转换为标准的http方法,达到支持DELETE、PUT的目的,需要注意的是:
测试 HiddenHttpMethodFilter 需使用 Tomcat 7.0 不能使用Tomcat 8.0

/*** Rest 风格的 URL. 以 CRUD 为例: * 新增: /order POST * 修改: /order/1 PUT update?id=1* 获取: /order/1 GET get?id=1 * 删除: /order/1 DELETE delete?id=1* * 如何发送 PUT 请求和 DELETE 请求呢 ?* 1. 需要配置 HiddenHttpMethodFilter* 2. 需要发送 POST 请求* 3. 需要在发送 POST 请求时携带一个 name="_method" 的隐藏域, 值为 DELETE 或 PUT* * 在 SpringMVC 的目标方法中如何得到 id 呢? 使用 @PathVariable 注解 */@RequestMapping(value = "/testRest/{id}", method = RequestMethod.PUT)public String testRestPut(@PathVariable Integer id) {System.out.println("testRest Put: " + id);return SUCCESS;}@RequestMapping(value = "/testRest/{id}", method = RequestMethod.DELETE)public String testRestDelete(@PathVariable Integer id) {System.out.println("testRest Delete: " + id);return SUCCESS;}@RequestMapping(value = "/testRest", method = RequestMethod.POST)public String testRest() {System.out.println("testRest POST");return SUCCESS;}@RequestMapping(value = "/testRest/{id}", method = RequestMethod.GET)public String testRest(@PathVariable Integer id) {System.out.println("testRest GET: " + id);return SUCCESS;}
<!-- 配置 org.springframework.web.filter.HiddenHttpMethodFilter: 可以把 POST 请求转换为DELETE 或 POST 请求 --><filter><filter-name>HiddenHttpMethodFilter</filter-name><filter-class>org.springframework.web.filter.HiddenHttpMethodFilter</filter-class></filter><filter-mapping><filter-name>HiddenHttpMethodFilter</filter-name><url-pattern>/*</url-pattern></filter-mapping>

转载于:https://blog.51cto.com/13416247/2096452

springMVC学习-day02相关推荐

  1. SpringMVC:学习笔记(11)——依赖注入与@Autowired

    SpringMVC:学习笔记(11)--依赖注入与@Autowired 使用@Autowired 从Spring2.5开始,它引入了一种全新的依赖注入方式,即通过@Autowired注解.这个注解允许 ...

  2. SpringMVC 学习-异常处理 SimpleMappingExceptionResolver 类

    SpringMVC 学习-异常处理 SimpleMappingExceptionResolver 类 参考文章: (1)SpringMVC 学习-异常处理 SimpleMappingException ...

  3. SpringMVC:学习笔记(10)——整合Ckeditor且实现图片上传

    SpringMVC:学习笔记(10)--整合Ckeditor且实现图片上传 配置CKEDITOR 精简文件 解压之后可以看到ckeditor/lang下面有很多语言的js,如果不需要那么多种语言的,可 ...

  4. (转)SpringMVC学习(三)——SpringMVC的配置文件

    http://blog.csdn.net/yerenyuan_pku/article/details/72231527 读者阅读过SpringMVC学习(一)--SpringMVC介绍与入门这篇文章后 ...

  5. springmvc学习笔记(10)-springmvc注解开发之商品改动功能

    springmvc学习笔记(10)-springmvc注解开发之商品改动功能 springmvc学习笔记(10)-springmvc注解开发之商品改动功能 标签: springmvc springmv ...

  6. SpringMVC学习(五)——零配置实现SpringMVC

    文章目录 1.引言 2.搭建过程 2.1 开发环境搭建 2.2 项目搭建 2.2.1 首先看`web.xml`配置 2.2.2 增加`WebApplicationInitializer`的实现类 2. ...

  7. SpringMVC学习(二)——快速搭建SpringMVC开发环境(注解方式)

    文章目录 说明 1.工程搭建 2.注解配置 2.1.context:annotation-config说明 2.2.context:component-scan配置说明 2.3.mvc:annotat ...

  8. springmvc学习笔记(19)-RESTful支持

    springmvc学习笔记(19)-RESTful支持 标签: springmvc springmvc学习笔记19-RESTful支持 概念 REST的样例 controller REST方法的前端控 ...

  9. SpringMVC:学习笔记(5)——数据绑定及表单标签

    SpringMVC--数据绑定及表单标签 理解数据绑定 为什么要使用数据绑定 基于HTTP特性,所有的用户输入的请求参数类型都是String,比如下面表单: 按照我们以往所学,如果要获取请求的所有参数 ...

最新文章

  1. 【Groovy】编译时元编程 ( ASTTransformation#visit 方法简介 | org.codehaus.groovy.ast.ModuleNode 脚本节点 )
  2. Notepad++ 查找匹配中文
  3. SQL优化常用方法31
  4. mysql pid_mysql pid文件是什么用途
  5. php websocket应用实例,php使用websocket示例详解
  6. k8s+jenkins
  7. Google协作平台中文版BUG两条
  8. 扩展GeoServer数据源
  9. java注释html警告,Javadoc中允许的HTML标记
  10. java转盘抽奖_JAVA用户抽奖系统设计(幸运大转盘作业)
  11. [模板] dp套dp bzoj5336: [TJOI2018]party
  12. 共模电压和差模电压两种理解方式
  13. 黑猴子的家:JavaWeb 之 CSS
  14. 【报告分享】京东大数据研究院:2020线上农产品消费趋势报告(附下载)
  15. mysql 聚簇索引和非聚簇索引
  16. 全球 43 亿个 IPv4 地址正式耗尽!【智能快讯】
  17. 平面漩涡Shader
  18. PaaS的五个核心价值
  19. 神奇女侠Wonder Woman迅雷下载
  20. redisson-spring-boot-starter

热门文章

  1. 即使是菜鸟,也能配置出一个网站
  2. 15天学习MVC后的小结(分享经历与想法)
  3. STM32工作笔记0069---汉字显示实验
  4. IntelliJ Idea学习笔记003---【Intellij IDEA】eclipse项目导入
  5. VS2015启动遇到的一些问题和解决方法
  6. c++ xml 解析“后直接跟值问题
  7. javascript编辑器
  8. java 动态重载_Java中是否可以实现动态重载解析?
  9. C语言和设计模式(抽象工厂模式)
  10. 一步一步写算法(之 A*算法)