`
dream_land
  • 浏览: 22463 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Spring springMVC添加支持Http的delete、put请求(HiddenHttpMethodFilter)

阅读更多
浏览器form表单只支持GET与POST请求,而DELETE、PUT等method并不支持,spring3.0添加了一个过滤器,可以将这些请求转换为标准的http方法,使得支持GET、POST、PUT与DELETE请求。

1.配置springmvc配置文件springmvc-servlet.xml
<!-- 浏览器不支持put,delete等method,由该filter将/xxx?_method=delete转换为标准的http delete方法 --> 
<filter> 
    <filter-name>HiddenHttpMethodFilter</filter-name> 
    <filter-class>org.springframework.web.filter.HiddenHttpMethodFilter</filter-class> 
</filter> 
 
<filter-mapping> 
    <filter-name>HiddenHttpMethodFilter</filter-name> 
    <servlet-name>springMVC</servlet-name> 
</filter-mapping>
    其中springmvc是DispatcherServlet的名称

    2.在对应的Controller中,添加对应的请求注解
/** 进入新增 */
@RequestMapping(value="/new") 
进入新增页面时没有用add而是用new,是因为某些浏览器会将add当做广告拦截掉。
   
/** 显示 */ 
@RequestMapping(value="/{id}") 
     
/** 编辑 */ 
@RequestMapping(value="/{id}/edit") 
    
/** 保存新增 */ 
@RequestMapping(method=RequestMethod.POST) 
    
/** 保存更新 */ 
@RequestMapping(value="/{id}",method=RequestMethod.PUT) 
     
/** 删除 */   
@RequestMapping(value="/{id}",method=RequestMethod.DELETE) 
/** 批量删除 */ 
@RequestMapping(method=RequestMethod.DELETE)
   
    3.页面请求
<form:form action="/xxx/xxx" method="put"></form:form>
   
   生成的页面代码会添加一个hidden的_method=put,并于web.xml中的HiddenHttpMethodFilter配合使用,在服务端将post请求改为put请求
<form id="test" action="/xxx/xxx" method="post"> 
    <input type="hidden" name="_method" value="put"/> 
</form>
    另外也可以用ajax发送delete、put请求
分享到:
评论

相关推荐

    Spring框架的SpringMVC

    SpringMVC支持构建RESTful Web服务,通过`@RequestMapping`注解的`method`属性,可以指定HTTP方法(GET、POST、PUT、DELETE等)。 通过理解并熟练掌握上述知识点,开发者能够高效地使用SpringMVC构建健壮、可维护...

    Spring_springmvc详细总结

    Spring MVC通过HTTP方法(GET、POST、PUT、DELETE等)和URI模板支持RESTful Web服务。 14. **上传和下载**: Spring MVC提供处理文件上传和下载的API,可以方便地实现这些功能。 15. **国际化和本地化**: 使用...

    SpringMVC+Spring+mybatis+maven+tomcat+restful项目创建详细

    在项目中,通过使用RESTful API,我们可以创建简洁、无状态、可缓存的接口,使得客户端可以通过HTTP方法(GET、POST、PUT、DELETE等)直接操作服务器资源。 创建一个包含这些技术的项目,通常会涉及到以下步骤: - ...

    springmvc+hibernate rest 架构

    在SpringMVC中,可以通过添加过滤器或者使用`@CrossOrigin`注解来启用CORS,以支持前端跨域请求。 5. **Hibernate**:Hibernate是一个对象关系映射(ORM)框架,它将Java对象与数据库表对应,简化了数据库操作。...

    Spring+SpringMVC+MyBatis整合工程完整实例及实现用户登录功能

    在描述中提到的RESTful风格,意味着使用HTTP的CRUD方法(GET、POST、PUT、DELETE)对应资源的创建、读取、更新和删除操作,使接口更加简洁、直观。 3. **MyBatis**:MyBatis是一个持久层框架,它允许开发者编写SQL...

    精通spring mvc 4 看透springmvc pdf 高清完全版

    书中详细介绍了如何定义RESTful资源,使用HTTP动词(GET、POST、PUT、DELETE等)处理操作,以及如何处理JSON和XML数据格式。 在实战部分,本书提供了丰富的案例和示例代码,让读者能够在实践中学习和应用所学知识。...

    一个实用了spring mvc和ajax异步请求的例子

    Controller类通常会包含处理HTTP请求的方法,比如处理GET、POST、PUT、DELETE等请求。例如,有一个`PostController`,它可能包含处理博客文章的增删改查操作。 Ajax,即Asynchronous JavaScript and XML,是一种在...

    SpringMVC4.2 开发Rest接口

    1. **HTTP方法支持**:RESTful接口通常基于HTTP的CRUD操作,如GET(获取)、POST(创建)、PUT(更新)和DELETE。SpringMVC通过`@RequestMapping`注解支持这些方法,允许开发者直接映射HTTP请求到控制器方法。 2. *...

    SpringMVC PPT_springmvc_

    SpringMVC 也支持 RESTful 风格的 Web 服务,可以通过 @RequestMapping 注解配合 HTTP 方法(GET、POST、PUT、DELETE 等)来创建符合 REST 规范的 API。 十二、单元测试 SpringMVC 提供了 MockMVC 工具,可以方便地...

    SpringMVC-手写笔记-附加截图

    对于PUT和DELETE等非标准HTTP方法,需要添加HiddenHttpMethodFilter过滤器,并在表单中添加隐藏域来模拟这些请求。 在方法参数中,可以直接传递POJO,SpringMVC会自动将请求参数绑定到对象属性。也可以使用Servlet...

    spring+springmvc+mybasits实现RSETfull

    标题中的“spring+springmvc+mybatis实现RESTful”指的是使用Spring框架、Spring MVC和MyBatis这三种技术来构建一个符合RESTful架构风格的Web应用程序。RESTful是一种Web服务设计模式,它强调资源的表述状态转移,...

    尚硅谷SpringMVC部分全套教学文档笔记

    - RESTful风格的URL设计用于创建、读取、更新和删除(CRUD)操作,通过HTTP方法(GET、POST、PUT、DELETE)对应不同的操作。 - SpringMVC支持使用@RequestMapping和HTTP方法来实现RESTful服务。 8. **国际化**: ...

    SpringMVC实战

    SpringMVC通过@RequestMapping注解支持RESTful风格的API设计,允许通过HTTP动词(GET、POST、PUT、DELETE等)来操作资源。 **10. 自动化测试** SpringMVC提供了MockMVC工具,可以在不依赖服务器环境的情况下进行...

    springmvc.zip

    10. **RESTful支持**:Spring MVC鼓励使用HTTP动词(GET、POST、PUT、DELETE等)来实现RESTful API,这可以通过`@RequestMapping`注解的`method`属性来指定。 11. **Spring整合**:Spring MVC与Spring其他模块紧密...

    Spring MVC--6.RESTful SpringMVC CRUD

    在实现上述功能时,Spring MVC提供了一些核心组件,如`DispatcherServlet`(负责分发请求)、`ModelAndView`(用于处理模型和视图)、`@Controller`和`@RequestMapping`(映射HTTP请求),以及`@PathVariable`、`@...

    SpringMVC(jar包)

    13. **RESTful风格**:SpringMVC支持RESTful Web服务,通过HTTP方法(GET、POST、PUT、DELETE等)和URI来表示资源及其操作。 14. **国际化与本地化**:SpringMVC提供国际化和本地化支持,可以根据用户请求的语言和...

    spring 3.0 应用springmvc 构造RESTful URL 详细讲解

    在Spring 3.0框架中,Spring MVC是一个强大的用于构建Web应用程序的模块,它支持构建RESTful风格的URL,使得应用程序更加符合Web服务的最佳实践。REST(Representational State Transfer)是一种设计模式,强调通过...

    spring+springmvc+mybatis+restful+mysql

    标题 "spring+springmvc+mybatis+restful+mysql" 描述了一个基于Java技术栈的Web应用程序开发架构,这是企业级应用开发中常见的组合。这个架构由五个主要部分组成: 1. **Spring**:这是一个全面的Java应用框架,...

    SpringMVC课件

    - `@GetMapping` / `@PostMapping` / `@PutMapping` / `@DeleteMapping`:分别对应HTTP的GET、POST、PUT、DELETE方法,用于细化请求映射。 4. **模型数据绑定** - `@RequestParam`:用于从请求参数中获取值,绑定...

Global site tag (gtag.js) - Google Analytics