Java开发RESTful

一.首先,什么是REST?

 REST从字面上讲叫做Representational State Transfer,翻译成表现层状态转移,但是一般在翻译的时候,前面会加一个Resource,即Resource Representational State Transfer,即为资源表现层状态转移.用人话讲就是:客户端通过HTTP请求,对服务器端的资源进行操作,实现"表现层(使用HTTP动词去促使服务器端资源的)状态发生改变".

二. 什么是RESTful?

 RESTful是代表REST化,或者说设计遵从REST架构的,所以要了解RESTful就需要了解REST.

三.我们为什么要使用RESTful的风格来开发接口?

先从传统设计接口的方式来看:

新增一个员工:http://www.demo.cn/finance/employee/createEmp

 删除一个员工:http://www.demo.cn/finance/employee/deleteEmp

修改一个员工:http://www.demo.cn/finance/employee/updateEmp

获取员工列表:http://www.demo.cn/finance/employee/listEmp

现在我们发现:一个非常简单的需求产生的问题:

 1.每一个操作,都需要一个独立的url去操作,因为我们对员工的动作都需要反映在url里面.

 2.会产生大量的url,非常不方便接口的维护和文档的维护

 3.如果有不同的响应方式,我们可能需要额外的参数,甚至不同的url来描述

 4.请求参数包含在请求地址中,无法针对性做缓存

如果我们使用RESTful风格的接口,那么我们可以如下做:

 新增一个员工:POST http://www.demo.cn/finance/employee

  删除一个员工:DELETE http://www.demo.cn/finance/employee

 修改一个员工:PATCH http://www.demo.cn/finance/employee

获取员工列表:GET http://www.demo.cn/finance/employee

可以发现,我们通过HTTP的请求方式来给予这些请求的不同含义,动作设计和示例如下:


下面是一个简单的实践,我们可以使用去哪儿网开源的YApi来帮助我们管理接口并测试:






 






评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值