GET 用来获取资源
POST 用来新增资源
PUT 用来更新资源
DELETE 用来删除资源
put和delete虽然是http协议的规范 ,但是遗憾的是,所有的无论是html4还是h5都不支持,所以我们在实际开开发过程当中要模拟这两种状态。
普通的URL开发方式 :http://qujianlei.com/getUserList addUser deleteUser updateUser
Restful风格的URL:
http://qujianlei.com/users/ method = “get” 获取用户列表
http://qujianlei.com/user method = “post” 更新用户
http://qujianlei.com/user method=“delete” 删除用户
http://qujianlei.com/user method = “put” 新增用户
Restful怎么实现
SpringMVC 提供了对 restful 风格很友好的支持。
支持无后缀的 uri 匹配,是一种很优雅的 restful 风格的 URI。
对于 html 不支持的 delete 和 put 两种提交方式,提供了一个过滤器进行转化:设置一个 _method = delete / put 的元素,通过 springmvc 提供的过滤器, 能够将他转化成 http 协议的 delete 和 put 提交方式 ,可以在 springmvc 的 @RequestMapping 注解里面获取。
像下面这样来模拟 put 和 delete 两种方式:
url :‘<%=path%>/user/’+userId+‘?_method=delete’
url :‘<%=path%>/user/’+userId+‘?_method=put’
a:配置 HiddenHttpMethodFilter 过滤器
hiddenHttpMethodFilter org.springframework.web.filter.HiddenHttpMethodFilter hiddenHttpMethodFilter /*b:在 @RequesetMapping 注解用指定 method 的方式来匹配 url
/**
- restful风格的用户列表
- @return
*/
@RequestMapping(value=“/users”,method = RequestMethod.GET)
public @ResponseBody List getUserListRestful(){
List userList = userService.getUserList(new User());
return userList;
}
c:对于 http://qujianlei.com/user/1 带参数的这种方式,需要用 @PathVariable 注解来接收
/**
- restful风格的删除
- @param userId
- @return
*/
@RequestMapping(value=“/user/{userId}” ,method = RequestMethod.DELETE)
public @ResponseBody Map<String,Object> userDelRestful(@PathVariable(“userId”) Long userId){
Map<String,Object> resultMap = new HashMap<String,Object>();
if(userId!=null){
if(userService.delUser(userId)){
resultMap.put(“result”, “删除用户成功”) ;
}else{
【附】相关架构及资料
资料领取
点击这里免费获取Android IOC架构设计等资料
领取获取往期Android高级架构资料、源码、笔记、视频。高级UI、性能优化、架构师课程、NDK、混合式开发(ReactNative+Weex)微信小程序、Flutter全方面的Android进阶实践技术,群内还有技术大牛一起讨论交流解决问题。
自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。
深知大多数初中级安卓工程师,想要提升技能,往往是自己摸索成长,但自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!
因此收集整理了一份《2024年最新Android移动开发全套学习资料》送给大家,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。
由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频
如果你觉得这些内容对你有帮助,可以添加下面V无偿领取!(备注Android)
如果你觉得这些内容对你有帮助,可以添加下面V无偿领取!(备注Android)
[外链图片转存中…(img-MuTP01Fr-1711025550170)]