REST风格的四种请求方式

本文介绍了RESTful架构的核心理念,它是HTTP协议的最佳实践,旨在使API设计更清晰、简洁。文章列举了常见的四种HTTP请求方法:GET用于查询,POST用于新增,PUT用于更新,DELETE用于删除,并通过具体例子展示了如何在Java中使用注解实现这些操作。
摘要由CSDN通过智能技术生成


为什么要使用RESTful架构?

1.REST 是 Representational State Transfer的缩写,如果一个架构符合REST原则,就称它为RESTful架构。
2.RESTful 架构可以充分的利用 HTTP 协议的各种功能,是 HTTP 协议的最佳实践。
3.RESTful API 是一种软件架构风格、设计风格,可以让软件更加清晰,更简洁,更有层次,可维护性更好

可参考这个网址:https://www.cnblogs.com/lomtom/p/12591836.html

1.常用的四种请求方式

|

请求说明用于例子例子说明
@GetMapping匹配GET方式的请求一般用于读取数据/zoos/2获取2号的信息
@PostMapping匹配POST方式的请求一般用于新增数据/zoos/2新增2号的信息
@PutMapping匹配PUT方式的请求一般用于更新数据/zoos/2更新2号的信息
@DeleteMapping匹配DELETE方式的请求一般用于删除数据/zoos/2删除2号的信息

2.例子

1.全部查询:@GetMapping("/list")

@GetMapping("/list") 等于 @RequestMapping("/list")

 //@RequestMapping("/list")
    @GetMapping("/list")
    public List<Account> list(){
        return accountService.findAccountList();
    }

2.单个查询:@GetMapping("/getOne/{id}")

@GetMapping("/getOne/{id}") 等于 @RequestMapping(value = “/getOne/{id}”,method = RequestMethod.GET)

//@RequestMapping(value = "/getOne/{id}",method = RequestMethod.GET)
    @GetMapping("/getOne/{id}")
    public  Account getAccountById(@PathVariable("id")int id){
        return accountService.findAccountById(id);
    }

3.新增:@PostMapping(value = “/add”)

@PostMapping(value = “/add”) 等于
@RequestMapping(value = “/add”, method = RequestMethod.POST)

/**
     *
     * 新增,用POST
     */
    //@RequestMapping(value = "/add", method = RequestMethod.POST)
    @PostMapping(value = "/add")
    public String postAccount(@RequestParam(value = "name") String name,
                              @RequestParam(value = "money") double money) {
        Account account = new Account();
        account.setMoney(money);
        account.setName(name);
        accountService.add(account);
        return account.toString();

    }

4.更新:@PutMapping( “/update/{id}”)

@PutMapping( “/update/{id}”)等于
@RequestMapping(value = “/update/{id}”,method = RequestMethod.PUT)

/**
     * 更新,用PUT
     */
    //@RequestMapping(value = "/update/{id}",method = RequestMethod.PUT)
    @PutMapping( "/update/{id}")
    public String updateAccount(@PathVariable("id") int id,
                                @RequestParam(value = "name") String name,
                                @RequestParam(value = "money") double money

    ){
        //System.out.println("-----------11111111");
        Account account = new Account();
        account.setMoney(money);
        account.setName(name);
        account.setId(id);
        accountService.update(account);
        //System.out.println("--------111------------");
        return account.toString();

    }

5.删除: @DeleteMapping("/delete/{id}")

@DeleteMapping("/delete/{id}")等于
@RequestMapping(value = “/delete/{id}”, method = RequestMethod.DELETE)

@RequestMapping(value = "/delete/{id}", method = RequestMethod.DELETE)
    @DeleteMapping("/delete/{id}")
    public void deleteAccount(@PathVariable("id") int id){

        accountService.delete(id);
    }
  • 3
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值