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的jsr303校验
因为是菜鸡,所以就还没有具体了解jsr303具体是什么 JSR是Java Specification Requests的缩写,意思是Java 规范提案.是指向JCP(Java Community Pr ...
- 什么是 Future?
在并发编程中,我们经常用到非阻塞的模型,在之前的多线程的三种实现中,不 管是继承 thread 类还是实现 runnable 接口,都无法保证获取到之前的执行结果. 通过实现 Callback 接口, ...
- 无单位数字和行高 —— 别说你懂CSS相对单位
前段时间试译了Keith J.Grant的CSS好书<CSS in Depth>,其中的第二章<Working with relative units>,书中对relative ...
- HTML5 Canvas绘制效率如何?
js运行效率在提升 编程语言的效率是前提,js自然比不上native的C语言效率,所以Canvas效率无疑比不上原生的2D图形绘制,但是js效率的提升是有目共睹的,以js与as为例,基本操作(运算操作 ...
- 原型模式故事链--new一个对象的过程
上一个总标题:https://segmentfault.com/a/11...提问:你有对象了吗?答:没有.笨!new一个不就好了吗! 问题点:为什么我要理解new一个对象的过程?答:不理解这个过程, ...
- 获取iframe引入页面内的元素
在web开发中,经常会用到iframe,难免会碰到需要在父窗口中使用iframe中的元素.或者在iframe框架中使用父窗口的元素.js在父窗口中获取iframe中的元素1. 格式:window ...
- java读取xml文件并转换成对象,并进行修改
1.首先要写工具类,处理读取和写入xml文件使用的工具.XMLUtil.javaimport java.io.FileInputStream; import java.io.FileWriter; i ...
- hql常用查询语句
// HQL: Hibernate Query Language.// 特点:// >> 1,与SQL相似,SQL中的语法基本上都可以直接使用.// >> 2,SQL查询的是表 ...
- 通过uniCloud白捡一个在线图库管理工具,可支持图床外链
喜欢写文章的技术大佬们,应该都有一个自己的在线图片管理工具吧. 尤其是在写markdown时,为了让我们的文章"图文并茂",显得不那么枯燥,就经常需要在合适的地方插入一些关联性的图 ...
- 攻防世界——gif
分析 只有黑白两种颜色,大小均一样.考虑代表着二进制. python脚本 ''' 同样颜色的图片的二进制数据都相同 编写思路:取二进制 -> 转ascii码 ''' white = open(r ...