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

}
相关推荐
程序猿小蒜34 分钟前
基于springboot的车辆管理系统设计与实现
java·数据库·spring boot·后端·spring·oracle
90后的晨仔1 小时前
Java后端开发:从零构建企业级应用的完整架构与技术栈详解
后端
我命由我123452 小时前
Spring Cloud - Spring Cloud 声明式接口调用(Fiegn 声明式接口调用概述、Fiegn 使用)
java·后端·spring·spring cloud·微服务·架构·java-ee
canonical_entropy2 小时前
领域驱动设计(DDD)中聚合根的最主要职责真的是维护一致性吗?
后端·架构·领域驱动设计
AntBlack2 小时前
不当韭菜 : 好像真有点效果 ,想藏起来自己用了
前端·后端·python
橙子家3 小时前
Serilog 日志库的简介
后端
间彧3 小时前
Java线程池深度实战:不同场景下的最优选择与性能优化
后端
间彧3 小时前
CompletableFuture与线程池:并发编程的双剑合璧
后端
间彧3 小时前
在实际项目中,如何根据任务类型(CPU/IO密集型)设计不同的线程池策略?
后端
golang学习记3 小时前
Go slog 日志打印最佳实践指南
开发语言·后端·golang