RestFul接口结构
协议 、 域名 、 路径 、 HTTP动词 、 提供JSON返回方式
1、协议:如http或https协议
2、域名
3、在RestFul风格中,互联网都是一种资源,所以 url 中不能有动词,只有名词
4、HTTP动词(REST资源操作):常用有4个
GET(SELECT):从服务器中查找资源
POST(INSERT):在服务器新建一个资源
PUT(UPDATE):客户端提供完整资源,更新了服务器的资源
DELETE(DELETE):从服务器删除资源
还有3个不常用:
PATCH:在服务器更新资源
HEAD:获取资源的元数据
OPTIONS:获取信息,关于资源的那些属性是客户端可以改变的
5、JSON返回格式
HTTP状态码
元数据:描述数据的数据,比如数据库中的某列的列属性……
常用有:
200: get ok
201: post created
204: put、delete not_content
400: 参数列表错误
500: INTERNAL_SERVER_ERROR
SpringMVC实现RestFul服务
SpringMVC原生态的支持了REST风格的架构设计
涉及到:
@RequestMapping
RequestMethod
@PathVariable
ResponseEntity
……
开发:
/**
* 查询
*
* @param id
* @return
*/
@RequestMapping(value = "{id}", method = RequestMethod.GET)
// @responseBody ResponseEntity<Void>
public ResponseEntity<Item> queryItemById(@PathVariable("id") Long id) {
try {
Item item = this.itemService.queryById(id);
// 响应状态码 200
// return ResponseEntity.status(HttpStatus.OK).body(item);
return ResponseEntity.ok(item);
} catch (Exception e) {
e.printStackTrace();
}
return ResponseEntity.status(HttpStatus.INTERNAL_SERVER_ERROR).body(null);
}
待续……