什么是Restful风格以及它的四种具体实现形式

一、背景
在之前我们进行项目开发时,我们一般不注重区分前端向后端请求数据的方式,不管你前端传过来的是get请求还是post请求,即不管是哪一种请求,我们都可以用@RequestMapping注解来处理。
但是如果在进行项目开发时,组里老大规定我们必须明确处理我们前端到底是哪一种请求,是get还是post?是put还是delete?那这时候其实我们就要以restful风格来处理我们的前端请求了。即restful能实现:在请求路径相同(比如几个请求路径均为"/user/test")的情况下,我们可以依据请求方法的不同,来匹配不同的后端接口。
二、Restful的四种请求实现
主要介绍restful以下四种实现,也就是对应我们的四种http请求方式:
(1)GET: 获取数据
(2)POST: 添加数据
(3)PUT: 修改数据
(4)DELETE: 删除数据

在项目中,GET,POST,PUT,DELETE四种请求方式分别对应@GetMapping、PostMapping、@PutMapping、@DeleteMapping。每个注解各司其职,只能干自己分内的事情,即@GetMapping只能处理get请求,不能处理其他三种请求。

1、GET即数据库的select操作: 请求会向数据库发查询数据的请求,从而来获取信息,其只是用来查询一下数据,不会修改、增加或更新数据,不会影响资源的内容。无论进行多少次操作,数据库里的内容都不会改变的。

2、PUT即数据库的update操作:请求是向服务器端发送数据的,从而改变信息,其用来修改数据的内容,但是不会增加数据等,无论进行多少次PUT操作,数据库都不会新增或减少数据。

3、POST即数据库的insert操作:请求同PUT请求类似,都是向服务器端发送数据的,但是该请求会新增数据,几乎目前所有的提交操作都是用POST请求的(比如用户注册)。

4、DELETE即数据库的delete操作:请求是用来删除某一个资源的。

POST主要作用在一个集合资源之上的(url),而PUT主要作用在一个具体资源之上的(url/xxx).如URL可以在客户端确定,那么可使用PUT,否则用POST。

一个URL地址,它用于描述一个网络上的资源,而HTTP中的GET,POST,PUT,DELETE四种请求方式就对应着对数据库中这个资源进行查,增,改,删4个操作。

三、代码实例

@RestController
@RequestMapping("/user/test")
public class JoblevelController {
 
    @Autowired
    private JoblevelService joblevelService;
 
    @ApiOperation(value = "获取所有职称")
    @GetMapping("/")
    public List<Joblevel> getAllJobLevels(){
        return joblevelService.list();
    }
 
    @ApiOperation(value = "添加职称")
    @PostMapping("/")
    public RespBean addJobLevel(@RequestBody Joblevel joblevel){
        if(joblevelService.save(joblevel)){
            return RespBean.success("添加职称成功");
        }
        return RespBean.error("添加职称失败");
    }
 
    @ApiOperation(value = "修改职称")
    @PutMapping("/")
    public RespBean updateJobLevel(@RequestBody Joblevel joblevel){
        if(joblevelService.updateById(joblevel)){
            return RespBean.success("修改职称成功");
        }
        return RespBean.error("修改职称失败");
    }
 
    @ApiOperation(value = "删除职称")
    @DeleteMapping("/{id}")
    public RespBean deleteJobLevelById(@PathVariable Integer id){
        if(joblevelService.removeById(id)){
            return RespBean.success("删除职称成功");
        }
        return RespBean.error("删除职称失败");
    }
 
    @ApiOperation(value = "批量删除职称")
    @DeleteMapping("/")
    public RespBean deleteJobLevelByIds(Integer[] ids){
        if(joblevelService.removeByIds(Arrays.asList(ids))){
            return RespBean.success("批量删除职称成功");
        }
        return RespBean.error("批量删除职称失败");
    }
}

详细了解Restful来龙去脉请点我

详解Restful前世今生请点我

  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Ajax是一种用于在Web页面上进行异步通信的术,它可以在不刷新整个页面的情况下,通过与服务器进行数据交换来更新部分页面内容。而RESTful是一种设计风格,它提倡使用统一的URL和HTTP方法来进行资源的操作。 在使用Ajax和RESTful风格传值时,可以通过发送HTTP请求来实现数据的传输和操作。具体步骤如下: 1. 客户端通过JavaScript代码创建一个XMLHttpRequest对象,用于发送HTTP请求。 2. 设置XMLHttpRequest对象的请求方法(GET、POST、PUT、DELETE等)和请求URL。 3. 如果需要传递参数,可以将参数以键值对的形式添加到请求URL中,或者将参数作为请求体的一部分发送。 4. 设置请求头,指定请求的数据格式(如JSON、XML等)。 5. 注册回调函数,用于处理服务器返回的响应数据。 6. 发送HTTP请求。 7. 服务器接收到请求后,根据请求方法和URL进行相应的处理,并返回响应数据。 8. 客户端接收到服务器返回的响应数据后,通过回调函数进行处理,更新页面内容。 使用Ajax和RESTful风格传值的好处是可以实现后端的解耦,提高系统的可扩展性和灵活性。同时,RESTful风格的URL设计也使得API更加清晰和易于理解。 相关问题: 1. 什么是Ajax? 2. 什么是RESTful风格? 3. 如何使用Ajax发送GET请求? 4. 如何使用Ajax发送POST请求? 5. 如何使用Ajax发送PUT请求? 6. 如何使用Ajax发送DELETE请求?

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值