`
hougbin
  • 浏览: 502506 次
  • 性别: Icon_minigender_1
  • 来自: 济南
社区版块
存档分类
最新评论

spring mvc 3支持 http 的put和delete方法

    博客分类:
  • ssh
 
阅读更多

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

    1.配置springmvc配置文件springmvc-servlet.xml

<!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />--><!-- 浏览器不支持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中,添加对应的请求注解

<!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />-->/** 进入新增 */
@RequestMapping(value
="/new")  
     
/** 显示 */  
@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)


    进入新增页面时没有用add而是用new,是因为某些浏览器会将add当做广告拦截掉。

    3.页面请求

<!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />--><form:form action="/xxx/xxx" method="put">  
</form:form>


    生成的页面代码会添加一个hidden的_method=put,并于web.xml中的HiddenHttpMethodFilter配合使用,在服务端将post请求改为put请求

<!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />--><form id="userInfo" action="/xxx/xxx" method="post">  
    
<input type="hidden" name="_method" value="put"/>  
</form> 


    另外也可以用ajax发送delete、put请求

分享到:
评论
1 楼 lgs0626 2012-12-20  
麻烦问一下weblogic 10.X能支持put 和delete方法嘛?

相关推荐

    Mastering Spring MVC 3中文版

    8. **RESTful支持**:通过@RequestMapping的HTTP方法参数支持GET、POST、PUT、DELETE等操作。 9. **模板引擎集成**:与FreeMarker、Thymeleaf等模板引擎无缝集成,提供更灵活的视图层设计。 对于源码部分,了解...

    Spring MVC 4.2.3

    3. **RESTful支持**:Spring MVC提供了对RESTful风格的HTTP方法(如GET、POST、PUT、DELETE等)的优秀支持,便于构建符合REST原则的Web服务。 4. **ModelAndView对象的改进**:此版本对`ModelAndView`对象进行了...

    spring mvc 4.0

    5. **RESTful支持**:4.0版本增强了对RESTful Web服务的支持,通过@RequestMapping和HTTP方法(GET、POST、PUT、DELETE等)的结合,更方便地创建RESTful API。 6. **数据绑定与验证**:Spring MVC提供了数据绑定和...

    spring MVC .docx

    12. **RESTful**: Spring MVC支持RESTful Web服务,通过HTTP动词(GET、POST、PUT、DELETE等)和URI结构来创建无状态、客户端驱动的接口。 13. **Spring Data Access**: Spring MVC可以与Spring Data、Hibernate、...

    Spring MVC 4.2.4.RELEASE 中文文档

    Spring MVC支持构建RESTful服务,通过HTTP方法如GET、POST、PUT、DELETE等,实现资源的增删改查操作。 **8. 自动配置与依赖注入** 利用Spring Boot的自动配置和Spring的依赖注入,开发者可以轻松地配置和管理Spring...

    spring mvc

    12. **RESTful风格**: Spring MVC 支持创建RESTful API,通过@RequestMapping配合HTTP动词(GET、POST、PUT、DELETE等),可以轻松构建符合REST原则的接口。 13. **异常处理**: 通过@ControllerAdvice和@...

    spring MVC_快速入门

    Spring MVC提供了很好的RESTful服务支持,通过@RequestMapping的GET、POST、PUT、DELETE等方法映射HTTP动词,以及@PathVariable和@RequestParam处理URL路径变量和查询参数。 10. **上传下载** 使用MultipartFile...

    spring mvc 整合包

    14. **RESTful风格**:Spring MVC支持创建RESTful API,通过HTTP方法(GET、POST、PUT、DELETE等)和URL路由实现资源操作。 15. **AJAX集成**:Spring MVC与jQuery、AngularJS等前端库配合,可以实现异步数据交互。...

    spring mvc restful service

    - **XML**:对于XML,Spring MVC同样支持使用JAXB进行序列化和反序列化。可以使用`@XmlRootElement`和`@XmlElement`等注解来标记Java类和属性。 4. **Maven工程**:Maven是Java项目管理工具,负责依赖管理和构建...

    spring MVC文档

    HTTP方法如GET、POST、PUT、DELETE等可以被精确地映射到控制器方法。同时,Spring MVC还提供了异常处理机制,可以自定义错误页面或者通过@ControllerAdvice全局处理异常。 视图技术方面,Spring MVC与各种视图技术...

    最全的Spring MVC注解例子,异步请求,错误处理

    - `@GetMapping`、`@PostMapping`、`@PutMapping`、`@DeleteMapping`:这些是HTTP动词的简化版本,分别对应GET、POST、PUT和DELETE请求。 - `@PathVariable`:从URL模板中获取参数,常用于RESTful API设计。 - `@...

    Spring MVC框架的各种依赖包下载

    14. **RESTful风格**:Spring MVC支持创建RESTful Web服务,利用HTTP方法(GET、POST、PUT、DELETE等)来表示资源的不同操作。 15. **整合其他技术**:Spring MVC可以轻松集成其他技术,如MyBatis、Hibernate等持久...

    spring-mvc-官方中文文档

    13. **RESTful 风格**:Spring MVC 可以很方便地支持 RESTful 风格的 Web 服务,利用 HTTP 方法(GET、POST、PUT、DELETE 等)来操作资源。 14. **模板引擎**:Spring MVC 可以与多种模板引擎集成,如 Thymeleaf,...

    Spring MVC REST Demo

    接下来,为了支持其他HTTP操作,如POST、PUT和DELETE,可以添加相应的注解: ```java @PostMapping("/users") public User createUser(@RequestBody User user) { // 创建新用户 } @PutMapping("/users/{userId}...

    Spring MVC Cookbook(PACKT,2016).pdf

    《Spring MVC Cookbook》是由PACKT Publishing在2016年出版的一本专著,主要针对Spring MVC框架提供了实用的解决方案和技巧。Spring MVC是Spring框架的一部分,它为构建基于Java的Web应用程序提供了一个模型-视图-...

    RESTful_Spring3MVC

    Spring 3 MVC框架是Java开发者广泛使用的构建Web应用的工具,它为开发RESTful API提供了强大的支持。本教程将深入探讨如何利用Spring 3 MVC实现RESTful服务。 首先,理解REST的基本原则至关重要。RESTful架构有以下...

    Spring MVC4.1.6jar包

    9. **RESTful风格**: Spring MVC4.1.6版本支持更好地创建RESTful服务,包括支持HTTP方法(GET、POST、PUT、DELETE等)和路径变量,以及更好的JSON和XML数据处理。 10. **模板引擎**: 对于视图的渲染,Spring MVC...

    spring MVC基础学习

    - Spring MVC支持创建RESTful API,通过HTTP动词(GET、POST、PUT、DELETE)和URI资源表示操作。 9. **异步处理**: - 使用`@Async`注解实现后台任务异步处理。 - 利用DeferredResult或...

    spring mvc demo下载地址

    6. **RESTful API设计**:如果demo包含RESTful服务,学习如何使用@RequestMapping和HTTP动词(GET、POST、PUT、DELETE)来设计API。 7. **单元测试和集成测试**:查看项目中的测试类,学习如何使用JUnit和Mockito...

    Spring-MVC-3.0.rar_Java spring mvc_spring mvc_spring ppt

    3. **RESTful支持**:通过@RequestMapping支持HTTP方法(GET、POST、PUT、DELETE等),便于构建RESTful API。 4. **MVC interceptors**:拦截器允许在请求处理前后执行自定义逻辑,用于权限控制、日志记录等场景。 5...

Global site tag (gtag.js) - Google Analytics