spring-mvc Restful风格

2023-11-12

Restful风格

概念

Restful就是一个资源定位及资源操作的风格。不是标准也不是协议,只是一种风格。基于这个风格设计的软件可以更简洁,更有层次,更易于实现缓存等机制

对比

  • 之前controller类的写法(resource文件里存在hello.jsp)

    @Controller
    public class RestFulController {
       
       @RequestMapping("/add")
       public String index( int p1,  int p2, Model model){
           
           int result = p1+p2;
      
           model.addAttribute("msg", "结果:"+result);
       
           return "hello";
           
      }
       
    }
    

    相应的,在启动请求时,如果手动赋值我们需要向地址栏里输入

    http://localhost:8080/add?p1=1&p2=2;
    //p1和p2的值可以自定义
    
  • 用了Restful后

    @Controller
    public class RestFulController {
    
    
       @RequestMapping("/add/{p1}/{p2}")
       public String index(@PathVariable int p1, @PathVariable int p2, Model model){
           //@PathVariable加在每个变量上
           
           int result = p1+p2;
      
           model.addAttribute("msg", "结果:"+result);
      
           return "hello";
           
      }
       
    }
    
    • 之后便可以这么输入了

      http://localhost:8080/add/1/2;
      //p1为1,p2为2
      

更改请求方式

  • 第一种方法
@Controller
public class RestFulController {
@RequestMapping(value = "/hello/{p1}/{p2}",method = {RequestMethod.POST})//把RequestMethod.后面的更改就可以了
 public String index(@PathVariable int p1, @PathVariable int p2, Model model){
       
       
       int result = p1+p2;
  
       model.addAttribute("msg", "结果:"+result);
  
       return "hello";
       
  }
}
  • 第二种方法

    使用

    @GetMapping
    @PostMapping
    @PutMapping
    @DeleteMapping
    @PatchMapping
    
    @Controller
    public class RestFulController {
    @PostMapping("/hello/{p1}/{p2}")
     public String index(@PathVariable int p1, @PathVariable int p2, Model model){
           
           
           int result = p1+p2;
      
           model.addAttribute("msg", "结果:"+result);
      
           return "hello";
           
      }
    }
    

    效果等同于第一种方法!

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

spring-mvc Restful风格 的相关文章

  • JavaScript -- 数组去重

    文章目录 方法一 利用indexOf 去重 思路 代码 方法二 利用splice方法去重 思路 代码实现 方法三 利用ES6的Set去重 思路 代码实现 方法一 利用indexOf 去重 indexOf 方法可返回某个指定的字符串值在字符串
  • REST API URI 设计的七准则

    在了解 REST API URI 设计的规则之前 让我们快速过一下我们将要讨论的一些术语 URI REST API 使用统一资源标识符 URI 来寻址资源 在今天的网站上 URI 设计范围从可以清楚地传达API的资源模型 如 http ap
  • 汇编指令与Intrinsics指令的对应关系汇总

    汇编指令与Intrinsics指令的对应关系汇总 参考网址 https software intel com sites landingpage IntrinsicsGuide 1 赋值指令 movq 使用方法 movq xmm m64 功
  • vs编译与停止调试时卡顿、无响应的问题

    这是由于VS运行太久参数大量的缓存导致 1 单击 开始 选择 运行 或者win r快捷键 2 键入 devenv exe resetuserdata 此命令会运行几分钟时间 Visual Studio 清除设置并将其自身重置到其最初的状态
  • java实现kafka消息发送和接收

    之前写了一篇关于kafka集群搭建的点击打开链接 想了解的可以看下 今天这个实现是和前面集群对应的 使用的是新版的API 属性如果想定制自己的 需要到官方网址上面去查看一下对应的值 推介大家多去看看官方的介绍和demo 网上有些翻译过来的例
  • 这可能是史上最详细的MES介绍

    本文篇幅较长 干货满满 可以先收藏 方便日后再次查看 目录 MES 的定义 MES 的产生背景 MES 的发展历程 MES 的功能介绍 MES 与其他 IT 系统的关系 MES 的业务价值 MES 的定义 MES Manufacturing
  • 关于webconfig 的配置跨域和理解

    今日碰到一个问题 就是在很久以前碰到的跨域问题 需求 页面要显示1个图片 但是因为各种原因 导致图片在服务器2上 但是要展示的程序在服务器1 的上面 这样就造成了在显示的时候出现了跨域的问题 本来的思路为直接写个程序进行后台获得图片的路径
  • DROP DATABASE

    在做迁移时 由于某种原因导致回退 现在准备将备库的数据库删除 然后重新部署dg 但在删除备库的时候遇到一些小问题 在节点一执行 oracle sde1 sqlplus as sysdba SQL Plus Release 11 2 0 3
  • Vmware安装到本地,磁盘不够解决方案

    在使用虚拟机的时候 如果在创建的时候选择错误的盘符 那么在安装虚拟机后这个盘符的空间容量不够的问题 那么如何把虚拟机迁移出来到另外的盘符 1 找到虚拟机安装路径 打开虚拟机点击虚拟机详细信息 查看详细的虚拟机的路径 2 找到虚拟机所有的文件
  • 小程序web-view,h5页监听返回到小程序指定页面

    在h5页面进行监听返回跳转判断 created this pushHistory window addEventListener popstate function e 首页点击返回 直接关闭网页 WeixinJSBridge call c
  • QT定时器与lambda表达式联合使用

    QTimer定时器在程序开发中经常使用 比如网络请求超时检查 定时刷新数据 控制动态图开始停止等功能 一般如果是定时触发某个标志 用专来的槽函数处理会显示有点繁琐 如果用lambda表达式处理就不用专门声明定义槽函数 这样代码会更简洁 下面

随机推荐

  • 在Eclipse中安装JSHint插件

    离线安装 1 下载插件包 http download eclipsesource com rsternberg jshint eclipse 0 9 8 20130728 0004 b94b446 zip 2 解压缩后是一个jshint e
  • Linux 自定义简单命令

    如何让一个脚本文件没有 sh后缀输入文件名即可执行 权限问题 首先当然得让它成为可执行文件 不要出现死亡Permission denine 执行以下命令 chmod x 文件路径 文件名 两种方式 当我们输入一个命令的时候默认是从下面这些路
  • 利用Python中的statsmodels简单建立多元线性回归模型(一)

    利用Python中的statsmodels简单建立多元线性回归模型 一 概念简单介绍 多元线性回归其实是在一元线性回归的基础上增加了若干个自变量个数 数学表达式如下 其中 y y y是因变量 响应变量 0
  • ESOE-IDE v0.3 技术说明书

    ESOE IDE v0 3 技术说明书 Author Feng WeiGuo 冯卫国 Email forxm 21cn com Web http www supertree org Tel 86 0755 81030955 All Righ
  • 如何获取股票预测数据集“上海证券综合指数”(上证综指,Shanghai Composite Index)?

    以下网址可提供较为全面的数据集 涵盖Date Opening price Highest price Lowest price Closing price Volume Turnover Ups and Downs Change指标 即日期
  • 10分钟教你用Python玩转微信之抓取好友个性签名制作词云

    01 前言 展示 各位小伙伴我又来啦 今天带大家玩点好玩的东西 用Python抓取我们的微信好友个性签名 然后制作词云 怎样 有趣吧 好了 下面开始干活 我知道你们还是想先看看效果的 后台登录 词云 02 环境准备 Python版本 3 6
  • Linux基础笔记18

    fdisk 分区工具 fdisk 这个古老的软件并不认识 GPT 所以 fdisk 只支持 MBR 的分区模式 且磁盘小于2T 大于了就不能使用 fdisk 进行分区了 新磁盘的分区 一块新加的磁盘的分区方式 检查系统中需要分区的磁盘 fd
  • Vue:Vue动画效果全解析

    Vue中的CSS动画原理 当使用transition 标签包裹标签时 Vue会自动分析其css样式 从而构建动画流程 下图中的点的开头到结尾即为一个动画流程 当一个动画流程执行时 内部被transition 标签包裹的标签瞬间增加两个fad
  • 深度之眼Paper带读笔记NLP.12:层次化attention网络.Baseline.09

    文章目录 前言 第一课 论文导读 文本分类 文本挖掘 数据类型 文本分类 相关技术 基于深度学习的文本分类 baseline涉及的三篇TC的论文 分层注意网络 前期知识储备 第二课论文精读 论文背景 论文整体框架 论文标题 层次注意力网络
  • Postman的高级用法一:重新认识postman核心模块

    本请求示例来自于免费天气API 实况天气接口API开发指南 未来一天天气预报api 天气API 关于Postman的核心模块 全局变量 请求接口 请求体 预处理脚本 测试用例模块 测试者可以针对请求响应做测试 编写测试用例 请求响应 测试用
  • webpack基础配置

    直接上代码 const path require path 为html文件中引入的外部资源如script link动态添加每次compile后的hash 防止引用缓存的外部文件问题 可以生成创建html入口文件 比如单页面可以生成一个htm
  • MYSQL数据库(七)MySQL架构和性能优化

    成功不易 加倍努力 MySQL架构和性能优化 4 1 存储引擎 4 1 1 MyISAM存储引擎 4 1 2 InnoDB引擎 4 1 3 其它存储引擎 4 1 4 管理存储引擎 4 2 MySQL中的系统数据库 4 3 服务器配置和状态
  • 数据结构与算法(二):线性表

    一 基本概念 二 顺序表 三 链表 1 单向链表 2 单向循环链表 3 双向链表 4 静态链表 上一篇 数据结构与算法 一 概述 中介绍了数据结构的一些基本概念 并分别举例说明了算法的时间复杂度和空间复杂度的求解方法 这一篇主要介绍线性表
  • linux中用conda安装大于3.6版本的R

    最开始我想安装一个r 用下面这个指令看了看发现最新版本竟然只有3 6 所以就想安装新版本的r conda search r base 如果想安装新版本的R的话 就不能同conda的默认安装渠道 所以我们首先添加一个渠道 conda conf
  • 测试类型分类

    测试类型 按方向 功能测试 性能测试 安全测试 兼容性测试 安装测试等 按阶段 单元测试 集成测试 系统测试 验收测试 按测试技术 黑盒测试 白盒测试 灰盒测试 按是否运行 静态测试 动态测试 其他 手工测试 自动化测试 冒烟测试 回归测试
  • 如何优雅的快速下载谷歌云盘的大文件 (一)

    一 注册MultCloud 官网地址 不让放网址 注册好了之后要在邮箱收一个激活链接 然后就可以登陆网页版了 二 加入云盘 点击云管理器 点击添加云盘 我们以从谷歌 百度作为示例 由于BaiDu云盘的限制 只能操作 我的应用数据 gt li
  • uni-app从入门到实战

    前些天发现了一个巨牛的人工智能学习网站 通俗易懂 风趣幽默 忍不住分享一下给大家 点击跳转到网站 uni app是啥 uni app是一个使用vue js来开发所有前端应用的框架 开发者开发一套代码可以发布到os 安卓 h5等各种小程序 u
  • notepad++ 文本文件内容丢失恢复

    今天用着notepad 不知道怎的 突然就崩溃了 然后我下次打开的时候弹了个框 我按了OK之后 里面所有的内容都不见了 网上百度了半天 总结如下 在如下目录下有notepad 会自动保存的文件 C Users Administrator A
  • mysql编码设置

    mysql 创建 数据库时指定编码很重要 很多开发者都使用了默认编码 乱码问题可是防不胜防 制定数据库的编码可以很大程度上避免倒入导出带来的乱码问题 网页数据一般采用UTF8编码 而数据库默认为latin 我们可以通过修改数据库默认编码方式
  • spring-mvc Restful风格

    Restful风格 概念 Restful就是一个资源定位及资源操作的风格 不是标准也不是协议 只是一种风格 基于这个风格设计的软件可以更简洁 更有层次 更易于实现缓存等机制 对比 之前controller类的写法 resource文件里存在