只要符合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是一种风格的更多相关文章

  1. 分享5种风格的 jQuery 分页效果【附代码】

    jPaginate 是一款非常精致的分页插件,提供了五种不同风格的分页效果,支持鼠标悬停翻页,快速分页功能.这款插件还提供了丰富的配置选项,你可以根据需要进行设置. 效果演示      源码下载 各个 ...

  2. 介绍两种风格的URL

    两种风格的“动态资源”——统一资源定位符(Uniform Resource Lactor,URL) 当前互联网上主要有两种主要风格的URL: 第一种直接在URL中知名文件(比如xxx.php,xxx. ...

  3. 基于RESTful 的几种实现(就随便了解一下)

    百度来的,原文未标出处,侵删. 1.1. RailsRuby on Rails是新兴的敏捷Web开发框架,在动态语言Ruby的支持下,Rails以新鲜的视角告诉我们Web开发是简单而快乐的.Rails ...

  4. linux程序命令行选项的3种风格:unix、gnu、x toolkit

    In Unix-like systems, the ASCII hyphen-minus is commonly used to specify options. The character is u ...

  5. ps 等程序的选项的三种风格

    unix options bsd options gnu long options unix options, which may be grouped and must be preceded by ...

  6. 应用 CSS3 动画实现12种风格的通知提示

    今天我们想分享几个简单的款式的网站通知效果.有很多的方式来呈现消息给用户:从经典的咆哮般的通知到窗口顶部的通知栏.各个网站的通知样式和效果千篇一律,难得出现创意的通知效果.这里是实现一个应用 CSS3 ...

  7. matplotlib 的几种风格 练习

    〇.准备数据 import numpy as np x = np.linspace(0, 5, 10) y = x ** 2 一.matlab风格的API 1.单图 from pylab import ...

  8. JS中3种风格的For循环有什么异同?

    转载请注明出处:葡萄城官网,葡萄城为开发者提供专业的开发工具.解决方案和服务,赋能开发者.原文出处:https://blog.bitsrc.io/3-flavors-of-the-for-loop-i ...

  9. 大数据学习day24-------spark07-----1. sortBy是Transformation算子,为什么会触发Action 2. SparkSQL 3. DataFrame的创建 4. DSL风格API语法 5 两种风格(SQL、DSL)计算workcount案例

    1. sortBy是Transformation算子,为什么会触发Action sortBy需要对数据进行全局排序,其需要用到RangePartitioner,而在创建RangePartitioner ...

随机推荐

  1. java-StringBuilder

    一个可变的字符序列. String类的对象内容不可以改变,所以每当进行字符串恶拼接时,总是会在内存中创建一个新的对象,所以经常改变内容的字符串 所以最好不要用String,因为每次生成的对象都会对系统 ...

  2. 什么是 Busy spin?我们为什么要使用它?

    Busy spin 是一种在不释放 CPU 的基础上等待事件的技术.它经常用于避免丢 失 CPU 缓存中的数据(如果线程先暂停,之后在其他 CPU 上运行就会丢失). 所以,如果你的工作要求低延迟,并 ...

  3. spring 支持哪些 ORM 框架?

    Hibernate iBatis JPA JDO· OJB

  4. Effective Java —— 谨慎覆盖clone

    本文参考 本篇文章参考自<Effective Java>第三版第十三条"Always override toString",在<阿里巴巴Java开发手册>中 ...

  5. 安装TypeScript

    安装TypeScript 创建工程文件夹:mkdir <project folder> 进入工程文件夹:cd <project folder> 快速创建程序包:npm init ...

  6. JS传参技巧总结

    1.隐式创建 html 标签 <input type="hidden" name="tc_id" value="{{tc_id}}"& ...

  7. java中如何按一定的格式输出时间, 必须给出例子

    题目2: 按一定的格式输出时间 import java.util.*;import java.text.SimpleDateFormat;public class Test {    public s ...

  8. java中如何知道一个字符串中有多少个字,把每个字打印出来,举例

    9.6 About string,"I am ateacher",这个字符串中有多少个字,且分别把每个字打印出来. public class Test {     static i ...

  9. 基于Debian搭建Hyperledger Fabric 2.4开发环境及运行简单案例

    相关实验源码已上传:https://github.com/wefantasy/FabricLearn 前言 在基于truffle框架实现以太坊公开拍卖智能合约中我们已经实现了以太坊智能合约的编写及部署 ...

  10. linux升级Nginx1.6到Nginx1.12.2

    我的升级环境: 旧版Nginx:1.6 新版Nginx:1.12.2 系统:Redhat 5.5 64位     前期准备 1.查看Nginx的安装位置 ps -ef |grep nginx  --如 ...