博客
关于我
强烈建议你试试无所不能的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

你可能感兴趣的文章
波形捕捉:(3)"捕捉设备"性能
查看>>
AliOS Things lorawanapp应用介绍
查看>>
美国人的网站推广方式千奇百怪
查看>>
java web学习-1
查看>>
用maven+springMVC创建一个项目
查看>>
linux设备驱动第四篇:以oops信息定位代码行为例谈驱动调试方法
查看>>
redis知识点整理
查看>>
Hello World
查看>>
Spring3全注解配置
查看>>
ThreadLocal真会内存泄露?
查看>>
IntelliJ IDEA
查看>>
低版本mybatis不能用PageHeper插件的时候用这个分页
查看>>
javaweb使用自定义id,快速编码与生成ID
查看>>
[leetcode] Add Two Numbers
查看>>
elasticsearch suggest 的几种使用-completion 的基本 使用
查看>>
04-【MongoDB入门教程】mongo命令行
查看>>
字符串与整数之间的转换
查看>>
断点传输HTTP和URL协议
查看>>
redis 数据类型详解 以及 redis适用场景场合
查看>>
mysql服务器的主从配置
查看>>