标签:string 软件架构 操作 any select 标准 资源 框架 json
REST这个词,是Roy Thomas Fielding在他2000年的博士论文中提出的。
如果一个架构符合REST原则,就称它为RESTful架构。
REST,即Representational State Transfer的缩写,我对这个词组的翻译是"表现层状态转化"。它是一种软件架构风格、设计风格,而不是标准,只是提供了一组设计原则和约束条件。它主要用于客户端和服务器交互类的软件。基于这个风格设计的软件可以更简洁,更有层次,更易于实现缓存等机制。
对于资源的具体操作类型,由HTTP动词表示。
常用的HTTP动词有下面五个(括号里是对应的SQL命令)。
GET(SELECT):从服务器取出资源(一项或多项)。
POST(CREATE):在服务器新建一个资源。
PUT(UPDATE):在服务器更新资源(客户端提供改变后的完整资源)。
PATCH(UPDATE):在服务器更新资源(客户端提供改变的属性)。
DELETE(DELETE):从服务器删除资源。
还有两个不常用的HTTP动词。
HEAD:获取资源的元数据。
OPTIONS:获取信息,关于资源的哪些属性是客户端可以改变的。
SpringMVC的RESTful风格的实现是通过@RequestMapping 及@PathVariable 注解实现的。
/blog/1 HTTP GET => 得到id = 1的blog
/blog/1 HTTP DELETE => 删除 id = 1的blog
/blog/1 HTTP PUT => 更新id = 1的blog
/blog HTTP POST => 新增BLOG
GET /tickets - 获取 tickets 列表
GET /tickets/12 - 获取一个单独的 ticket
POST /tickets - 创建一个新的 ticket
PUT /tickets/12 - 更新 ticket #12
PATCH /tickets/12 - 部分更新 ticket #12
DELETE /tickets/12 - 删除 ticket #12
GET /tickets/12/messages - 获取ticket #12下的消息列表
GET /tickets/12/messages/5 - 获取ticket #12下的编号为5的消息
POST /tickets/12/messages - 为ticket #12创建一个新消息
PUT /tickets/12/messages/5 - 更新ticket #12下的编号为5的消息
PATCH /tickets/12/messages/5 - 部分更新ticket #12下的编号为5的消息
DELETE /tickets/12/messages/5 - 删除ticket #12下的编号为5的消息
具体为:
@RequestMapping(value = "/tickets/{ticketsId}",method = RequestMethod.POST) public JsonResult<String> delTicketsId(@PathVariable String ticketsId){ ...... }
参考博客:
1.http://www.ruanyifeng.com/blog/2014/05/restful_api.html
2.http://www.ruanyifeng.com/blog/2011/09/restful
3.http://www.blogjava.net/soken/articles/371548.html
4.http://www.blogjava.net/soken/articles/371548.html
标签:string 软件架构 操作 any select 标准 资源 框架 json
原文地址:http://www.cnblogs.com/beidongxing/p/7875693.html