`
qingyu11068
  • 浏览: 67721 次
文章分类
社区版块
存档分类
最新评论

SpringMVC笔记(七)RESTFul风格的SringMVC

阅读更多

一、REST:

即 Representational State Transfer。(资源)表现层状态转化。是目前最流行的一种互联网软件架构。
它结构清晰、符合标准、易于理解、扩展方便, 所以正得到越来越多网站的采用.
HTTP 协议里面,四个表示操作方式的动词:GET、POST、PUT、DELETE。
它们分别对应四种基本操作:
GET 用来获 取资源,
POST 用来新建资源,
PUT 用来更新资源,
DELETE 用来删除资源。

二、示例:

 
 @Controller @RequestMapping("/rest") 
             public class RestController {
                 @RequestMapping(value="/user/{id}",method=RequestMethod.GET) 
                 public String get(@PathVariable("id") Integer id){
                     System.out.println("get"+id);
                     return "/hello";
                 }
                 @RequestMapping(value="/user/{id}",method=RequestMethod.POST) 
                 public String post(@PathVariable("id") Integer id){
                     System.out.println("post"+id);
                     return "/hello"; 
                 }
                 @RequestMapping(value="/user/{id}",method=RequestMethod.PUT)
                 public String put(@PathVariable("id") Integer id){
                     System.out.println("put"+id);
                     return "/hello";
                 } 
                 @RequestMapping(value="/user/{id}",method=RequestMethod.DELETE)
                 public String delete(@PathVariable("id") Integer id){
                     System.out.println("delete"+id);
                     return "/hello";
                 }
             }
 
前端URL 请求方式:(官网:www.fhadmin.org) Controller
/user/1 HTTP GET : 请求 method=RequestMethod.GET的方法
/user/1 HTTP DELETE: 请求 method=RequestMethod.DELETE的方法
/user/1 HTTP PUT: 请求 method=RequestMethod.PUT的方法
/userr HTTP POST: 请求 method=RequestMethod.POST的方法

三、浏览器只支持GET和POST请求,如何才能发起DELETE和PUT的请求呢

浏览器 form 表单只支持 GET 与 POST 请求,(官网:www.fhadmin.org) 而DELETE、PUT 等 method 并不支 持,Spring3.0  添加了一个过滤器----HiddenHttpMethodFilter,

可以将这些请求转换 为标准的 http 方法,使得支持 GET、POST、PUT 与 DELETE 请求。

1.将POST请求转化为put请求和delele请求的步骤

 1).在web.xml文件中配置:

 

1
2
3
4
5
6
7
8
9
           <!-- HiddenHttpMethodFilter过滤器可以将POST请求转化为put请求和delete请求! -->
<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>

 

 2)在表单域中需要携带一个name值为_method,(官网:www.fhadmin.org) value值为put或者delete的参数,如下所示:

1
2
3
4
5
6
7
8
<form action="${pageContext.request.contextPath }/user/1" method="post">
    <input type="hidden" name="_method" value="put"/>
    <input type="submit" value="Submit"/>
</form>
<form action="${pageContext.request.contextPath }/user/1" method="post">
    <input type="hidden" name="_method" value="delete"/>
    <input type="submit" value="Submit"/>
</form>     

 此时点击Submit按钮,两个表单会分别以put 和delete点的方式进行提交

 

分享到:
评论

相关推荐

    SpringMVC的Restful风格Demo

    在SpringMVC中实现RESTful风格,可以创建更加灵活、易于理解和维护的API。让我们深入探讨一下SpringMVC如何实现RESTful风格以及相关知识点。 首先,理解RESTful的基本原则至关重要。REST(Representational State ...

    SpringMVC RESTFUL风格

    ### SpringMVC RESTFUL风格详解 #### 一、RESTFUL风格概述 RESTFUL(Representational State Transfer)风格是一种用于客户端和服务端交互的设计理念而非具体的技术实现。它通过一组设计原则和约束条件,使得构建...

    springmvc之restful风格CRUD

    本文将深入探讨如何在Spring MVC中实现RESTful风格的CRUD操作,这对初学者尤其有价值。 首先,了解REST(Representational State Transfer,表述性状态转移)是一种网络应用程序的设计风格和开发方式,基于HTTP协议...

    尚硅谷SpringMVC笔记

    尚硅谷SpringMVC笔记

    狂神说springmvc笔记.zip

    SpringMVC支持创建符合RESTful风格的Web服务,通过HTTP动词(GET、POST、PUT、DELETE等)和URI资源定位。 9. **拦截器**: 拦截器可以实现请求预处理、后处理等功能,如权限验证、日志记录等。 10. **模板引擎**...

    一、SpringMVC尚硅谷的笔记.md

    springmvc 笔记

    SpringMVC笔记.md

    SpringMVC笔记,记录的比较完整,参考价值较高,大家共同进步

    springmvc 3.2.8 restful支持

    在3.2.8版本中,它增强了对RESTful风格的支持,使得开发者可以更容易地创建符合REST原则的服务。REST(Representational State Transfer)是一种网络应用程序的设计风格和开发方式,基于HTTP协议,强调资源的表述和...

    SpringMVC-7 RESTful CRUD

    在本教程中,我们将深入探讨如何使用SpringMVC框架实现RESTful CRUD操作。RESTful(Representational State Transfer)是一种架构风格,它强调通过HTTP方法(GET、POST、PUT、DELETE等)来处理Web资源,使得API设计...

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

    《尚硅谷SpringMVC部分全套教学文档笔记》涵盖了SpringMVC框架的核心概念和技术,通过一系列章节深入浅出地讲解了SpringMVC的各个方面。以下是基于这些文档内容的详细知识点总结: 1. **SpringMVC概述与HelloWorld*...

    基于springMVC 的restful风格接口前后端使用说明

    在基于SpringMVC的开发框架中,Restful风格的接口设计越来越受到前后端开发者的青睐。Restful接口以其简洁、高效和易于理解的特点,很好地满足了前后端分离的开发模式。本说明将详细介绍如何在SpringMVC环境下设计并...

    springmvc 实现restful

    RESTful架构风格有以下关键特征: 1. **资源**:每个URL代表一个资源,如用户、文章或订单。 2. **状态转移**:客户端通过HTTP方法(GET、POST、PUT、DELETE等)来改变或获取资源的状态。 3. **无状态**:每次请求...

    SpringMVC 使用 RESTful 架构实现 CRUD 操作

    在本教程中,我们将探讨如何使用 SpringMVC 实现基于 RESTful 风格的 CRUD(Create、Read、Update、Delete)操作。 **CRUD 操作概述** CRUD 操作是任何数据驱动应用的基础,它们分别代表创建新记录、读取现有记录、...

    SpringMVC笔记,整理自用,md格式

    尚硅谷SpringMVC笔记,整理自用,md格式

    SpringMVC(七)RESTful案例

    在本篇中,我们将深入探讨SpringMVC框架中如何实现RESTful风格的Web服务,并重点关注如何处理静态资源。RESTful是一种软件架构风格,用于设计网络应用程序,尤其在Web服务领域广泛应用。它强调通过HTTP方法(如GET、...

    【Spring+Mybatis+SpringMVC笔记】.zip

    自己做的Spring+Mybatis+SpringMVC笔记------------------------------------------------------------------------------------------------------------------------ QQ:1017834057

    springMVC搭建Restful服务

    在本教程中,我们将专注于如何使用Spring MVC 4搭建一个基于RESTful风格的服务。REST(Representational State Transfer)是一种软件架构风格,它设计用于创建简单、可扩展的网络服务。 **一、RESTful服务的基本...

    springMVC整合FastJson实现RestFul风格API

    本文将详细介绍如何在Spring MVC项目中整合FastJson,实现RESTful风格的API。 首先,我们需要在项目中引入Spring MVC和FastJson的相关依赖。在Maven的pom.xml文件中添加以下依赖: ```xml &lt;groupId&gt;org.spring...

    springmvc笔记

    springmvc笔记,非常非常的详细,教科书式的教程啊啊啊啊啊

Global site tag (gtag.js) - Google Analytics