Rest风格基本语法与实战

1,前置知识点

1.1 @GetMapping,@PostMapping,@PutMapping,@DeleteMapping

平时我们都是使用@RequestMapping,然后通过它的method属性来指定请求的方式,这样是有些麻烦的,然后这四个标签就是来简化这一点的,具体如下,
@GetMapping = @RequestMapping(method = RequestMethod.GET)
@PostMapping = @RequestMapping(method = RequestMethod.POST)
@PutMapping = @RequestMapping(method = RequestMethod.PUT)
@DeleteMapping = @RequestMapping(method = RequestMethod.DELETE)

1.2 @PathVariable

@PathVariable是Spring MVC中的注解,用于从URL路径中提取变量值并将其绑定到方法参数上。它通常与@RequestMapping一起使用。
使用@PathVariable注解可以方便地获取REST风格URL路径中的变量值,并将其作为方法参数使用。
@GetMapping("/{id}")
    public String getById(@PathVariable Integer id){
        System.out.println("book query ..." + id );
        return "{'module':'book query'}";
    }

在getUserById方法上,我们使用@GetMapping(“/{id}”)将方法与URL路径/books/{id}进行映射。{id}表示一个占位符,它对应URL路径中的实际值。
然后,我们在方法参数上使用@PathVariable注解,将id参数与URL路径中的实际值进行绑定。Spring MVC会自动提取URL路径中的相应部分,并将其作为参数传递给getUserById方法。
例如,当客户端发送GET请求到/books/1时,Spring MVC将提取URL中的1作为id参数的值,并将其传递给getById方法。在方法内部,我们可以使用id来执行相应的逻辑操作,比如根据用户ID查询用户信息。

1.3 按照REST风格访问资源时,使用行为动作区分对资源进行了何种操作

http://localhost:8080/books			查询所有图书信息   GET(查询)
http://localhost:8080/books/1			查询指定图书信息	GET(查询)
http://localhost:8080/books			添加图书信息	POST(新增/保存)
http://127.0.0.1:8080/books	修改用户信息	PUT(修改/更新)
http://localhost:8080/books/1	删除用户信息	DELETE(删除)

2,代码演示

controller类

package com.hkd.controller;

import org.springframework.web.bind.annotation.*;


@RestController
@RequestMapping("/books")
public class BookController {

    @GetMapping
    public String query(){
        System.out.println("book query..." );
        return "{'module':'book query'}";
    }

    @PostMapping
    public String save(){
        System.out.println("book save..." );
        return "{'module':'book save'}";
    }

    @PutMapping
    public String update(){
        System.out.println("book update..." );
        return "{'module':'book update'}";
    }

    @DeleteMapping("/{id}")
    public String update(@PathVariable Integer id){
        System.out.println("book delete ..." + id );
        return "{'module':'book delete'}";
    }

    @GetMapping("/{id}")
    public String getById(@PathVariable Integer id){
        System.out.println("book query ..." + id );
        return "{'module':'book query'}";
    }
}

使用postman测试

在这里插入图片描述

以查询所有和删除为例演示

查询所有

在这里插入图片描述
在这里插入图片描述

删除图书

在这里插入图片描述
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

一只呆小白

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值