博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
spring mvc-REST
阅读量:6332 次
发布时间:2019-06-22

本文共 1847 字,大约阅读时间需要 6 分钟。

 

REST风格:

/user/1  get请求  获取用户

/user/1  post请求  新增用户

/user/1  put请求  更新用户

/user/1  delete请求  删除用户

 

在Spring mvc中如何提交put和delete请求呢?

需要在web.xml中配置一个HiddenHttpMethodFilter过滤器。该过滤器过滤post请求,如果在post请求中有一个_method参数,那么_method参数值就是请求方式。所以在jsp页面可以这样写:

 

web.xml配置过滤器:

methodFilter
org.springframework.web.filter.HiddenHttpMethodFilter
methodFilter
/*

 

控制器:

package com.proc;import org.springframework.stereotype.Controller;import org.springframework.web.bind.annotation.PathVariable;import org.springframework.web.bind.annotation.RequestMapping;import org.springframework.web.bind.annotation.RequestMethod;@Controllerpublic class User {    @RequestMapping(value="user/{id}",method=RequestMethod.GET)    public String get(@PathVariable("id") Integer id){        System.out.println("获取用户:"+id);        return "hello";    }        @RequestMapping(value="user/{id}",method=RequestMethod.POST)    public String post(@PathVariable("id") Integer id){        System.out.println("添加用户:"+id);        return "hello";    }        @RequestMapping(value="user/{id}",method=RequestMethod.PUT)    public String put(@PathVariable("id") Integer id){        System.out.println("更新用户:"+id);        return "hello";    }        @RequestMapping(value="user/{id}",method=RequestMethod.DELETE)    public String delete(@PathVariable("id") Integer id){        System.out.println("删除用户:"+id);        return "hello";    }}

 

我们一次点击GET请求、POST请求、PUT请求和DELETE请求:

获取用户:1添加用户:1更新用户:1删除用户:1

 

总结:发出PUT请求和DELETE请求的步骤:

1、在发出请求时必须是POST请求;

2、在POST请求中添加一个名为_method的参数,其值用来指定是PUT请求还是DELETE请求;

3、配置HiddenHttpMethodFilter过滤器。该过滤器的作用是POST请求可以转换成PUT或DELETE请求。

 

转载于:https://www.cnblogs.com/arrows/p/10523037.html

你可能感兴趣的文章
学习型机器人将首先具备人工智能雏形
查看>>
发展型机器人:由人类婴儿启发的机器人. 1.3 发展型机器人学的基本原则
查看>>
专访阿里研究员袁全:从 AI 玩《星际争霸》谈认知智能的现状与趋势
查看>>
《Node.js区块链开发》——2.5 风险提示
查看>>
《Python算法教程》——1.2 为什么要读这本书
查看>>
《Spark Cookbook 中文版》一第1章 开始使用Apache Spark
查看>>
C++程序设计:原理与实践(进阶篇)16.9 容器算法
查看>>
《面向对象的思考过程(原书第4版)》一1.7 使用类图作为可视化工具
查看>>
《用于物联网的Arduino项目开发:实用案例解析》—— 2.2 Arduino Uno的有线连接(以太网)...
查看>>
《21天学通Java(第7版)》—— 1.5 组织类和类行为
查看>>
《嵌入式Linux与物联网软件开发——C语言内核深度解析》一2.2 常用位操作符...
查看>>
阿里副总裁车品觉:无数据不成活
查看>>
《Hadoop海量数据处理:技术详解与项目实战》一 3.2 HDFS读取文件和写入文件
查看>>
《C++游戏编程入门(第4版)》——第2章 真值、分支与游戏循环:Guess My Number...
查看>>
《面向机器智能的TensorFlow实践》一2.2 Jupyter Notebook与matplotlib
查看>>
感知生态变化路线
查看>>
在纽约,与世界握手
查看>>
程序员,你可以更健康!
查看>>
我买了个阿里云服务器并在上面部署了一个项目
查看>>
《OpenStack云计算实战手册(第2版)》——1.6 配置角色
查看>>