Restful风格的使用

Restful风格的使用

使用技术

  • SpringBoot框架

一、基础知识简述

REST:表述性状态转换(Representational State Transfer),一种设计风格。

RESTful:符合REST风格的程序。

RESTFUL是一种网络应用程序的设计风格和开发方式,基于HTTP,可以使用XML格式定义或JSON格式定义。RESTFUL适用于移动互联网厂商作为业务接口的场景,实现第三方OTT调用移动网络资源的功能,动作类型为新增、变更、删除所调用资源。

百度百科

二、RESTful的特性

特性有三个,分别是资源(Resources)表现层(Representation)状态转换(State Transfer)

资源

可以表达为我们访问的资源,也就是我们发送url请求所请求,响应回来的信息就是一个资源。

表现层

资源的呈现形式,就是表现层。

状态转换

不同的操作状态,举例来说就是,HTTP中有不同操作的请求,GET、POST、PUT、DELETE

  • GET 请求资源
  • POST 保存资源
  • PUT 更新资源
  • DELETE 删除资源

三、实战Demo

我们做一个简单的Demo,进行Resuful的设计操作。

我们使用web请求对后端数据库进行增删改查时,以前的做法是:

方法 请求类型 请求url 请求体
post .../addxxx name = xxx
get .../delxxx?id=xxx
post .../updatexxx id=xxx,name=xxx
get .../addxxx?id=xxx

现在改为

方法 请求类型 请求url 请求体
post .../xxx name = xxx
delete .../xxx/1
put .../xxx/1 name=xxx
get .../xxx

总体就是我们使用不同的请求方法url的占位数来达到不同的操作。

因为重点在Controller层,所以只说明Controller和其他重要细节。

新增

 @PostMapping("/testData")
    public ResultVo addTestData(@RequestBody TestPOJO testPOJO) {
        testMapper.insert(testPOJO);
        return ResultVoUtil.success("新增数据成功");
    }

请求方法设置为Post,通过请求体提交保存的数据。

删除

@DeleteMapping("/testData/{id}")
public ResultVo delTestData(@PathVariable("id")Integer id) {
    int i = testMapper.deleteByPrimaryKey(id);
    return ResultVoUtil.success("删除数据成功");
}

请求方法设置为Delete,在url上占位一个数传输数据

修改

@PutMapping("/testData")
public ResultVo updTestData(@RequestBody TestPOJO testPOJO) {
    testMapper.updateByPrimaryKeySelective(testPOJO);
    return ResultVoUtil.success("修改数据成功");
}

请求方法设置为PUT,通过请求体提交保存的数据。

查询

@GetMapping("/testData")
public ResultVo getTestData() {
    List testPOJOS = testMapper.selectAll();
    return ResultVoUtil.success(testPOJOS);
}

请求设置为GET请求。

你可能感兴趣的:(Restful风格的使用)