【SpringBoot】| 接口架构风格—RESTful

一:接口架构风格---RESTful

1. 认识RESTful

(1)接口

①接口: API(Application Programming Interface,应用程序接口)是一些预先定义的接口(如函数、HTTP接口),或指软件系统不同组成部分衔接的约定。 用来提供应用程序与开发人员基于某软件或硬件得以访问的一组例程,而又无需访问源码,或理解内部工作机制的细节。

②接口(API):可以指访问servlet, controller的url, 调用其他程序的函数。

(2)架构风格

(3)REST架构风格

REST : 是一种接口的架构风格和设计的理念,不是标准。(英文: Representational State Transfer , 中文: 表现层状态转移)

①表现层状态转移:

表现层:就是视图层, 显示资源的, 例如:jsp等显示操作资源的结果。

状态: 表示资源的变化。

转移: 资源可以变化的;资源能创建(new状态)、资源创建后可以查询资源(能看到资源的内容)、资源内容可以被修改(修改后资源 和之前的不一样)。

②REST中的要素:用REST表示资源和对资源的操作
资源使用URL表示,通过名词表示资源。

使用http中的动作(请求方式), 表示对资源的操作(CURD)

GET: 查询资源 ---> sql select

POST: 创建资源 ---> sql insert

PUT:更新资源 ---> sql update

DELETE: 删除资源 ---> sql delete

如果需要分页、排序等参数,依然是通过?的形式放在url的后面

2. RESTful 的注解

①@PathVariable,用来获取url中的数据;该注解是实现RESTFul最主要的一个注解!

②@GetMapping,接收get方式的请求;等同于@RequestMapping( method=RequestMethod.GET)。

③@PostMapping,接收和处理Post方式的请求;等同于@RequestMapping( method=RequestMethod.POST) 。

④@PutMapping,接收put方式的请求;等同于 @RequestMapping( method=RequestMethod.PUT)。

⑤@DeleteMapping,接收delete方式的请求;等同于 @RequestMapping( method=RequestMethod.DELETE)。

⑥@RestController复合注解, 是@Controller 和@ResponseBody组合;在类的上面使用@RestController , 表示当前类者的所有方法都加入了 @ResponseBody。

①在类上使用@RestController复合注解,作用时把当前类交给Spring容器管理,并且在该类下面的每个方法都默认加上@ResponseBody。

②使用GetMapping注解发送get请求,我们知道Restful风格的请求路径中是没有变量的,所以要先使用{变量名}定义路径变量,在使用路径变量@PathVariable注解引用路径变量;例如:queryStudent(@PathVariable(value = "stuId") Integer stuId),表示把路径变量传过来的值赋给stuId变量。

相关推荐
vx-bot55566610 小时前
企业微信接口在多租户SaaS平台中的集成架构与数据隔离实践
大数据·架构·企业微信
野犬寒鸦12 小时前
从零起步学习并发编程 || 第一章:初步认识进程与线程
java·服务器·后端·学习
我爱娃哈哈12 小时前
SpringBoot + Flowable + 自定义节点:可视化工作流引擎,支持请假、报销、审批全场景
java·spring boot·后端
桌面运维家13 小时前
vDisk流量怎么精细化分配?VOI/IDV架构配置指南
架构
zuozewei13 小时前
7D-AI系列:DeepSeek Engram 架构代码分析
人工智能·架构
徐礼昭|商派软件市场负责人13 小时前
Moltbot,也就是OpenClaw的底层架构解析
架构
国科安芯13 小时前
面向星载芯片原子钟的RISC-V架构MCU抗辐照特性研究及可靠性分析
单片机·嵌入式硬件·架构·制造·risc-v·pcb工艺·安全性测试
小北的AI科技分享13 小时前
人工智能大模型搭建:数据、算法与算力的三大基石
架构·模型·搭建
OceanBase数据库官方博客14 小时前
爱奇艺基于OceanBase实现百亿级卡券业务的“单库双擎”架构升级
数据库·架构·oceanbase·分布式数据库
一品威客网14 小时前
App 软件制作的核心技术与方法:从架构到落地
架构