RESTFul是一种风格
只要符合RESTFul风格的,都可以叫做使用了RESTFul架构,一般的网站里传数据,都是用的?a=1&b=2.。。如果是RESTFul风格的话,就会是/a/1/b/2。。类似于这样的方式来传数据的,都是RESTFul架构,这么写可能看不懂,就是把传入参数当成路径就是符合RESTFul的架构了!但是这样,有时传参数时,很容易出现多个传参程序是一样的,这个时候,两种方式,一种是把传参的名称改顺序,一种是换请求风格。
传参名称改顺序:传入参数,a=1,b=2 ,一个是website/a/b/1/2 ,一个是website/a/1/b/2。这样就可以传参到不同的函数了!
再举个例子。
@RequestMapping(value = "/show/all/{id}/{name}/{content}",method = RequestMethod.GET)
//也可以写成@GetMapping("/show/all/{id}/{name}/{content}",两个效果是一样的。
//两个一样的声明,会导致程序出错,为了避免这种情况,一般都会用不同的接收方式区分,比如GetMapping和PostMapping
public Object show(@PathVariable("id") Integer id,@PathVariable("name") String name,
@PathVariable("content") String content){
HashMap<String, Object> hashMap = new HashMap<>();
hashMap.put("id",id);
hashMap.put("name",name);
hashMap.put("content",content);
return hashMap;
}
@PostMapping(value = "/show/all/{id}/{name}/{content}")
public Object show1(@PathVariable("id") Integer id,@PathVariable("name") String name,
@PathVariable("content") String content){
HashMap<String, Object> hashMap = new HashMap<>();
hashMap.put("id",id);
hashMap.put("name",name);
hashMap.put("content",content);
return hashMap;
}
}
这个例子里,两个请求的地址是一样的,如何知道调用哪个函数呢?就看发出请求的时候,用的是哪种方式请求,请求方式有4种,GetMapping,PostMapping,DeleteMapping,PutMapping。
@GetMapping("get")//只接收get请求(找)
@PostMapping("post")//只接收post请求(增)
@DeleteMapping("delete")//只接收delete请求(删)
@PutMapping("update")//只接收put请求(改)
RESTFul是一种风格的更多相关文章
- 分享5种风格的 jQuery 分页效果【附代码】
jPaginate 是一款非常精致的分页插件,提供了五种不同风格的分页效果,支持鼠标悬停翻页,快速分页功能.这款插件还提供了丰富的配置选项,你可以根据需要进行设置. 效果演示 源码下载 各个 ...
- 介绍两种风格的URL
两种风格的“动态资源”——统一资源定位符(Uniform Resource Lactor,URL) 当前互联网上主要有两种主要风格的URL: 第一种直接在URL中知名文件(比如xxx.php,xxx. ...
- 基于RESTful 的几种实现(就随便了解一下)
百度来的,原文未标出处,侵删. 1.1. RailsRuby on Rails是新兴的敏捷Web开发框架,在动态语言Ruby的支持下,Rails以新鲜的视角告诉我们Web开发是简单而快乐的.Rails ...
- linux程序命令行选项的3种风格:unix、gnu、x toolkit
In Unix-like systems, the ASCII hyphen-minus is commonly used to specify options. The character is u ...
- ps 等程序的选项的三种风格
unix options bsd options gnu long options unix options, which may be grouped and must be preceded by ...
- 应用 CSS3 动画实现12种风格的通知提示
今天我们想分享几个简单的款式的网站通知效果.有很多的方式来呈现消息给用户:从经典的咆哮般的通知到窗口顶部的通知栏.各个网站的通知样式和效果千篇一律,难得出现创意的通知效果.这里是实现一个应用 CSS3 ...
- matplotlib 的几种风格 练习
〇.准备数据 import numpy as np x = np.linspace(0, 5, 10) y = x ** 2 一.matlab风格的API 1.单图 from pylab import ...
- JS中3种风格的For循环有什么异同?
转载请注明出处:葡萄城官网,葡萄城为开发者提供专业的开发工具.解决方案和服务,赋能开发者.原文出处:https://blog.bitsrc.io/3-flavors-of-the-for-loop-i ...
- 大数据学习day24-------spark07-----1. sortBy是Transformation算子,为什么会触发Action 2. SparkSQL 3. DataFrame的创建 4. DSL风格API语法 5 两种风格(SQL、DSL)计算workcount案例
1. sortBy是Transformation算子,为什么会触发Action sortBy需要对数据进行全局排序,其需要用到RangePartitioner,而在创建RangePartitioner ...
随机推荐
- java支持多继承吗
java不支持多继承,只支持单继承(即一个类只能有一个父类).但是java接口支持多继承,即一个子接口可以有多个父接口.(接口的作用是用来扩展对象的功能,一个子接口继承多个父接口,说明子接口扩展了多个 ...
- python 保存图片被截断
运行如下代码发现横坐标属性值被截断 plt.savefig('D:\\project\\python\\zhifangtu\\a.png') plt.show() plt.savefig('D:\\p ...
- (stm32学习总结)—GPIO位带操作
本章参考资料:<STM32F10X-中文参考手册>存储器和总线构架章节.GPIO 章节,<CM3 权威指南 CnR2>存储器系统章节. 位带简介 位操作就是可以单独的对一个比特 ...
- 安装TypeScript
安装TypeScript 创建工程文件夹:mkdir <project folder> 进入工程文件夹:cd <project folder> 快速创建程序包:npm init ...
- WebGL小姐姐教我学画画之起手式
初次接触WebGL,如有错误之处欢迎留言,共同学习进步. v WebGL的自画像 我,WebGL,全名Web Graphics Library,是为了让死宅程序猿们(摊手)能在浏览器上为所欲为的画女朋 ...
- uniapp中websokcet封装和使用
1. websocket.js 封装代码 //是否已经连接上ws let isOpenSocket = false //心跳间隔,单位毫秒 let heartBeatDelay = 3000 l ...
- 启动两个jboss需要修改的端口号 (两个不能相同)
standalone-configuration-standalone.xml
- DWR以及SSH集成DWR
之前只是单独接触了DWR,知道一个基本的开发流程. web.xml配置文件: <!-- 配置Dwr信息 --> <servlet> <servlet-name> ...
- Python中用类实现对象和封装
""" 用类实现对象和封装 对象:对应客观世界的事物,将描述事物的一组数据和与这组数据有关的操作封装在一起, 形成一个实体,这个实体就是对象 类:具有相同或相似性质的对象 ...
- kali添加开机自启[亲测有效]
kali添加开机自启 采用systemd的方法,kali默认是没有rc.local的,需要自己创建.本方法也适用于ubuntu 18.04 64bit 改写rc-local.service 文件 先从 ...