当前位置: 首页 > article >正文

sping boot 基于 RESTful 风格,模拟增删改查操作

RESTful -> 
增:post  
删:delete 
改:  put
查:  get
RESTful 资源路径,一般以 s 复数结尾  

以下是代码示例:

package com.example.springboot.controller;

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

@RestController
public class Hello {

    @RequestMapping("/hellos")//设置浏览器访问路径
    public String hello(){
        System.out.println("完成查询操作");
        return "模拟返回查询结果";
    }

    @RequestMapping(value = "/hellos",method = RequestMethod.POST)
    public void post(){
        System.out.println("完成新增操作");
    }

    @RequestMapping(value = "/hellos/{id}",method = RequestMethod.PUT)
    public void updateByID(@PathVariable Integer id){
        System.out.println("根据id修改记录,当前id为:"+id);
    }

    @RequestMapping(value = "/hellos/{id}",method = RequestMethod.DELETE)
    public void deleteByID(@PathVariable Integer id){
        System.out.println("根据id删除记录,当前id为:"+id);
    }
    
}

使用 postman 发送对应请求

四个请求分别是:

get: localhost:8080/hellos

post: localhost:8080/hellos

put: localhost:8080/hellos/1

delete: localhost:8080/hellos/1

四个请求都发送后,运行结果:

2024-09-07T22:22:14.577+08:00  INFO 7396 --- [springboot] [nio-8080-exec-2] o.a.c.c.C.[Tomcat].[localhost].[/]       : Initializing Spring DispatcherServlet 'dispatcherServlet'
2024-09-07T22:22:14.578+08:00  INFO 7396 --- [springboot] [nio-8080-exec-2] o.s.web.servlet.DispatcherServlet        : Initializing Servlet 'dispatcherServlet'
2024-09-07T22:22:14.581+08:00  INFO 7396 --- [springboot] [nio-8080-exec-2] o.s.web.servlet.DispatcherServlet        : Completed initialization in 2 ms
完成查询操作
完成新增操作
根据id修改记录,当前id为:1
根据id删除记录,当前id为:1

对应大量重复的注解,我们可以对其进行改造,使其可读性更好

package com.example.springboot.controller;

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

@RestController
@RequestMapping("/hellos")//改造1
public class Hello {

    @GetMapping//改造1
    public String hello(){
        System.out.println("完成查询操作");
        return "模拟返回查询结果";
    }

    @PostMapping//改造2
    public void post(){
        System.out.println("完成新增操作");
    }

    @PutMapping("/{id}")//改造3
    public void updateByID(@PathVariable Integer id){
        System.out.println("根据id修改记录,当前id为:"+id);
    }

    @DeleteMapping("/{id}")//改造4
    public void deleteByID(@PathVariable Integer id){
        System.out.println("根据id删除记录,当前id为:"+id);
    }

}


http://www.kler.cn/news/295103.html

相关文章:

  • 【全网最全】2024年数学建模国赛A题30页完整建模文档+17页成品论文+保奖matla代码+可视化图表等(后续会更新)
  • 使用LSTM(长短期记忆网络)模型预测股票价格的实例分析
  • 复旦大学王龑团队发布《静态与动态情感的面部表情识别》综述
  • 漫谈设计模式 [5]:建造者模式
  • 通用内存快照裁剪压缩库Tailor介绍及源码分析(一)
  • ubuntu安装maven
  • C++可以被重载的操作符Overloadable operators
  • SpringBoot 依赖之 Spring for RabbitMQ
  • LabVIEW如何确保采集卡稳定运行
  • 基于SSM+Vue+MySQL的可视化高校公寓管理系统
  • 【Qt笔记】QUndoView控件详解
  • 大数据开发职场:理性分析拖延
  • box64 安装
  • 开源模型应用落地-LlamaIndex学习之旅-LLMs-集成vLLM(二)
  • [Linux]:环境变量与进程地址空间
  • Python中的私有属性与方法:解锁面向对象编程的秘密
  • django ubuntu 踩坑集锦
  • jmeter之TPS计算公式
  • Kafka命令
  • 在全球化时代成为超级个体:Web3、个人品牌与AI工具的融合
  • 【LeetCode】12.整数转罗马数字
  • MSSQL数据库安全配置
  • 信创实践(2):利用Leapp工具迁移CentOS至AnolisOS,实现系统升级与自主可控
  • 通信工程学习:什么是FM频率调制
  • 火狐浏览器设置秘籍:让https协议下的ws不加密时运行无阻(WebSocket connection HTTPS)
  • React Native中iOS工程从OC更换为swift
  • 压力测试知识总结
  • 网络学习-eNSP配置路由器
  • 【机器人工具箱Robotics Toolbox开发笔记(十四)】三连杆机器人直线轨迹规划仿真实例
  • 漫谈设计模式 [13]:命令模式