RESTFUL风格和传统访问方式区别

很多RESTFUL风格的访问地址都是一样的,只是行为动作区分了,对外隐藏了真实操作

代码示例

复制代码
/**
 * @author hrui
 * @date 2024/8/9 14:26
 */
@Data
@NoArgsConstructor
@AllArgsConstructor
public class Book {
    private Integer id;
    private String name;
}

package com.example.demo1.controller;

import com.example.demo1.pojo.Book;
import org.springframework.web.bind.annotation.*;

/**
 * @author hrui
 * @date 2024/8/8 22:53
 */
@RestController
@RequestMapping("/books")
public class TestController {

    @GetMapping("/{id}")
    public String getBookById(@PathVariable Integer id){
        return "获得Id为 " + id+ " 的图书";
    }


    @GetMapping("/{id}/{name}")
    public String getBookByIdAndName(@PathVariable Integer id,@PathVariable String name){
        return "获得Id为 " + id+ " 的图书,name为"+name;
    }

    @GetMapping("")
    public String getAllBooks(){
        return "获得所有图书";
    }


    @PostMapping("")
    public String saveBook(@RequestBody Book book){
        return "新增图书成功";
    }


    @PutMapping("")
    public String updateBook(@RequestBody Book book){
        return "修改图书成功";
    }


    @DeleteMapping("/{id}")
    public String deleteBook(@PathVariable Integer id){
        return "删除id为 "+id+" 图书成功";
    }

}
相关推荐
程序员爱钓鱼24 分钟前
Go语言实战案例-判断一个数是否为质数
后端·google·go
程序员爱钓鱼29 分钟前
Go语言实战案例-读取本地文本文件内容
后端·google·go
mCell8 小时前
Go 并发编程基础:从 Goroutine 到 Worker Pool 实践
后端·性能优化·go
Python智慧行囊9 小时前
Flask 框架(一):核心特性与基础配置
后端·python·flask
ん贤11 小时前
如何加快golang编译速度
后端·golang·go
摸鱼仙人~12 小时前
Spring Boot 参数校验:@Valid 与 @Validated
java·spring boot·后端
思无邪667512 小时前
从零构建搜索引擎 build demo search engine from scratch
后端
Littlewith13 小时前
Node.js:创建第一个应用
服务器·开发语言·后端·学习·node.js
码间舞13 小时前
【面试官】:NodeJs事件循环你了解多少?我笑了,让我喝口水慢慢给你说来......
后端·node.js
itsoo13 小时前
2.5万字!一文搞懂稳定性建设要怎么做?
后端