博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Spring MVC 使用拦截器 HiddenHttpMethodFilter配置Rest风格的URL
阅读量:6849 次
发布时间:2019-06-26

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

<!-- 4、使用Rest风格的URI,将页面普通的post请求转为指定的delete或者put请求 -->

详细使用请参考这篇博客:地址:http://blog.csdn.net/pplcheer/article/details/74999748

Rest 风格的 URL.         以 CRUD 为例:          新增: /order POST          修改: /order/1 PUT update?id=1          获取:/order/1 GET get?id=1          删除: /order/1 DELETE delete?id=1      如何发送 PUT 请求和 DELETE 请求呢 ?
1. 需要在web.xml文件中配置 HiddenHttpMethodFilter
HiddenHttpMethodFilter
org.springframework.web.filter.HiddenHttpMethodFilter
HiddenHttpMethodFilter
/*
HttpPutFormContentFilter
org.springframework.web.filter.HttpPutFormContentFilter
HttpPutFormContentFilter
/*
补充说明:  如果在web.xml中配置HttpPutFormContentFilter,配置如下
httpPutFormcontentFilter
org.springframework.web.filter.HttpPutFormContentFilter
httpPutFormContentFilter
/*

 需要注意的是,该过滤器只能接受enctype值为application/x-www-form-urlencoded的表单,也就是说,在使用该过滤器时,form表单的代码必须如下:

 

......
2. 需要发送 POST 请求        3. 需要在发送 POST 请求时携带一个 name="_method" 的隐藏域, 值为 DELETE 或 PUT        jsp文件如下:        
Test Rest Get
在 SpringMVC 的目标方法中如何得到 id 呢? 使用 @PathVariable 注解 */ @RequestMapping(value = "/testRest/{id}", method = RequestMethod.PUT) public String testRestPut(@PathVariable Integer id) { System.out.println("testRest Put: " + id); return SUCCESS; } @RequestMapping(value = "/testRest/{id}", method = RequestMethod.DELETE) public String testRestDelete(@PathVariable Integer id) { System.out.println("testRest Delete: " + id); return SUCCESS; } @RequestMapping(value = "/testRest", method = RequestMethod.POST) public String testRest() { System.out.println("testRest POST"); return SUCCESS; } @RequestMapping(value = "/testRest/{id}", method = RequestMethod.GET) public String testRest(@PathVariable Integer id) { System.out.println("testRest GET: " + id); return SUCCESS; } /** * @PathVariable 可以来映射 URL 中的占位符到目标方法的参数中. * @param id * @return */ @RequestMapping("/testPathVariable/{id}") public String testPathVariable(@PathVariable("id") Integer id) { System.out.println("testPathVariable: " + id); return SUCCESS; } @RequestMapping("/testAntPath/*/abc") public String testAntPath() { System.out.println("testAntPath"); return SUCCESS; }
你可能感兴趣的文章
python --文本文件的输入输出
查看>>
Tslib的移植【转】
查看>>
iOS开发--音乐文件播放工具类的封装(包含了音效的封装)
查看>>
如何获取一个AlertDialog中的EditText中输入的内容
查看>>
OpenGL帧缓存对象(FBO:Frame Buffer Object) 【转】
查看>>
hihoCoder_二分&#183;归并排序之逆序对
查看>>
掩码计算工具netmask
查看>>
linux中内核的一个不错的参数somaxconn
查看>>
android自动更新软件版本
查看>>
Silverlight 引路蜂二维图形库示例:绘制各种几何图形
查看>>
浅谈HTTP中Get与Post的区别
查看>>
Sql建表和sql语句的注意事项
查看>>
asp(javascript) 判断是否post表单项
查看>>
Vector
查看>>
每日英语:Dating in China Is a Largely Commercial Transaction
查看>>
ziproxy 3.3.0 发布,HTTP代理服务器
查看>>
C++ 简单选择排序
查看>>
Lucene之删除索引
查看>>
CSS3 多列
查看>>
javaScript中eval()方法转换json对象
查看>>