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+" 图书成功";
    }

}
相关推荐
凤山老林7 分钟前
Spring Boot + OpenSearch 实战:搞定全文检索、向量召回与混合排序
spring boot·后端·全文检索·向量·opensearch·全文索引
IT_陈寒30 分钟前
Vite的HMR怎么突然罢工了?原来是我漏了这个配置
前端·人工智能·后端
BingoGo39 分钟前
一个ChatGPT 超级省额度方案!用 TaskQuay 连接网页 ChatGPT 和本地 Codex
人工智能·后端
QQ_21696290961 小时前
基于微服务架构的店铺管理系统的设计与实现
大数据·spring boot·后端·spring·微服务·小程序·架构
芒鸽1 小时前
把 Agent 运行时做成插件系统:agent-harness(openJiuwen Rust版) 的实践
开发语言·后端·rust
CHHH_HHH1 小时前
【Linux系统篇】进程间通信揭秘:从管道到共享内存
linux·服务器·c语言·开发语言·后端·ubuntu
mldong1 小时前
Node 开发者也有自己的轻量工作流引擎了:npm i 一行,5 分钟跑通一条审批流
javascript·后端·typescript
考虑考虑9 小时前
cmd局部设置java变量
运维·后端·自动化运维
陈随易12 小时前
在Finch用了62亿词元,我认为这是新一代Agent工具之神
前端·人工智能·后端
wing9814 小时前
从codex转战workbuddy使用一周的感受
前端·人工智能·后端