关于restful架构风格的理解

  • restful摘要:

REST:Representational State Transfer(表象层状态转变)

1.每一个URI代表一种资源;

2.客户端和服务器之间,传递这种资源的某种表现层;

3.客户端通过四个HTTP动词(get、post、put、delete),对服务器端资源进行操作,实现”表现层状态转化”。

作用:设计一套统一的API提供给各种客户端来进行数据交互

设计:URL定位资源,用HTTP动词(GET,POST,DELETE,DETC)描述操作

反例:

https://example.com/api/getallUsers GET 获取所有用户 

https://example.com/api/getuser/1 GET 获取标识为1用户信息 

https://example.com/api/user/delete/1 GET/POST 删除标识为1用户信息 

https://example.com/api/updateUser/1 POST 更新标识为1用户信息 

https://example.com/api/User/add POST 添加新的用户

正例:

https://example.com/api/users GET 获取所有用户信息 

https://example.com/api/users/1 GET 获取标识为1用户信息 

https://example.com/api/users/1 DELETE 删除标识为1用户信息 

https://example.com/api/users/1 Patch 更新标识为1用户部分信息,包含在body中 

https://example.com/api/users POST 添加新的用户

  • 关于spring对restful的支持的注解:

@RestController与@Controller

@RestController相当于 @Controller和@ResponseBody结合。它有两层含义:一是作为控制器注入到Spring上下文环境,二是请求响应为数据序列化(默认序列化方式是JSON),而不是跳转到html或模板页面。

@RequestMapping 与@GetMapping、@PutMapping、@PostMapping、@DeleteMapping

@RequestMapping(value = “/article”, method = RequestMethod.GET) 新方法可以简写为: @GetMapping("/article"),其他同理。

@RequestBody与@ResponseBody

用于接收和响应序列化数据(JSON),可以支持嵌套JSON数据结构。

@PathVariable 、@RequestParam和@ModelAttribute

PathVariable用于URI上的{参数}
RequestParam用于接收普通方式提交的参数

@ModelAttribute用于将参数绑定到实体上

 

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值