权威分析@RequestParam和@RequestPart 的区别(官方文档)

2023-11-08

一、今天写了两个文件上传的接口用到了@RequestParam和@RequestPart
@RequestPart

    /**
     * 单文件上传
     * @param file
     * @param bucket
     * @return
     */
    @RequestMapping("uploadFile")
    public JsonResult uploadFile(@RequestPart("file") MultipartFile file, @RequestParam String bucket){

        String fileUrl = aliossService.uploadFile(file, bucket);
        Map<String,String> result = new HashMap<>();
        result.put("fileUrl",fileUrl);

        return success(result);
    }

@RequestParam

    /**
     * 上传字符串
     * @param stringFile
     * @param bucket
     * @return
     */
    @RequestMapping("uploadStringFile")
    public JsonResult uploadStringFile(@RequestParam("stringFile") String stringFile, @RequestParam("bucket") String bucket){

        String fileUrl = aliossService.uploadStringFile(stringFile, bucket);
        Map<String,String> result = new HashMap<>();
        result.put("fileUrl",fileUrl);

        return success(result);
    }

二、比较一下他们的区别吧
@RequestPart
RequestPart

译文:
1.@RequestPart这个注解用在multipart/form-data表单提交请求的方法上。
2.支持的请求方法的方式MultipartFile,属于Spring的MultipartResolver类。这个请求是通过http协议传输的。
3.@RequestParam也同样支持multipart/form-data请求。
4.他们最大的不同是,当请求方法的请求参数类型不再是String类型的时候。
5.@RequestParam适用于name-valueString类型的请求域,@RequestPart适用于复杂的请求域(像JSON,XML)。

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

权威分析@RequestParam和@RequestPart 的区别(官方文档) 的相关文章

随机推荐

  • LDAP服务器基础讲解

    LDAP用于管理和组织网络中的用户身份 权限和资源信息 LDAP在比赛中主要用于对samba和apache用户进行认证 想要完成上面这一点需要先对LDAP有一个初步的了解 LDAP中的域由目录项组成 每个目录项就相当于一个对象 目录项的结构
  • C语言简易选择题系统

    部分效果图 配置文件如下 加入新题库时 需要新建一个空文件 并把题目添加到新文件中 并把新文件名填入配置文件中 实现代码 File Name do test Sketch out A simple multiple choice syste
  • 为什么视觉系统对自动驾驶至关重要?

    自动驾驶汽车 AV 的承诺是 其将比人为控制的车辆安全得多 并大幅减少事故的发生 它需要众多技术的支持 才能在没有驾驶员驾驶的情况下运行 这些技术包括摄像头 激光雷达 雷达 超声波 车辆对一切 V2X 和全球定位系统 GPS 等 自动驾驶汽
  • Ant Design中使用Upload上传组件如何自定义文件列表展示位置

    软件环境 macOS Big Sur 11 1 React 16 12 0 Ant Design 4 10 0 实际效果 现有一个需求 是上传文件 点击浏览文件按钮 选中文件后 在按钮的上方显示 上传的文件列表 如下图所示 当前效果 目前使
  • 存储器容量的扩展

    存储器容量的扩展 一般而言 要构成一个存储器 一般需要多个存储芯片一起来构成 那么多个存储芯片是如何构成一个大的存储器来进行工作的呢 一般有如下三种方式 方式一 位扩展 增加存储字长 假设现在有1K 1024个 4位的存储芯片 容量为409
  • 为什么显示 from PyQt5.QtWebEngineWidgets import QWebEngineView ModuleNotFoundError: No module named 'PyQt5.QtWebEngineWidgets'

    这个错误通常是由于你的 Python 环境中缺少 PyQt5 QtWebEngineWidgets 模块引起的 这个模块是 PyQt5 库中的一个子模块 用于提供 WebEngine 功能 要解决这个问题 你需要安装 PyQt5 库 最简单
  • Flutter全屏效果切换使用 实现

    Flutter官方自带的splash启动页是在android或者ios的文件里面设置 但是不能添加倒计时之类的效果 自己做启动页需要全屏效果显示的时候 调用SystemChrome setEnabledSystemUIOverlays 这个
  • 开源最佳实践:Android平台页面路由框架ARouter

    摘要 为了更好地让开发者们更加深入了解阿里开源 阿里云云栖社区在3月1号了举办 阿里开源项目最佳实践 在线技术峰会 直播讲述了当前阿里新兴和经典开源项目实战经验以及背后的开发思路 在本次在线技术峰会上 阿里云资深开发工程师刘志龙分享了And
  • 【超简单方法】ubantu18.04.2安装最新显卡驱动

    1 检查工作 1 1去https www geforce cn drivers查找适合自己显卡的最新驱动版本 点击 开始搜索 然后 可以看出此时笔者的2060的最新显卡驱动版本为430 26 1 2 检查可安装驱动版本 接下来执行打开ter
  • ATF bl1 ufshc_dme_get/set处理流程分析

    ATF bl1 ufshc dme get set处理流程分析 UFS术语缩略词 1 ATF的下载链接 2 ATF BL1 ufshc dme get set流程 3 ufs总体架构图 3 1 UFS Top Level Architect
  • Collectors.collectingAndThen()

    Collectors collectingAndThen Java 8 流的新类 java util stream Collectors 实现了 java util stream Collector 接口 同时又提供了大量的方法对流 str
  • 赛灵思FPGA编程入门指南

    中英双语字幕精校版 赛灵思FPGA编程入门之新手指南第1集 什么是FPGA 现场可编程门阵列 FPGA概念 什么是FPGA 现场可编程门阵列 FPGA概念 本系列视频旨在为FPGA新人逐步讲解教程和基本概念 提供FPGA编程入门指导 帮助您
  • web程序员表白程序,三行情书

    Git项目地址 loveLetter 很久之前的作品 用JS和CSS3实现的 今天给大家分享一部分 若要见完整版 请点击右侧链接下载 程序员浪漫表白 三行情书 一等奖 JS CSS3 注 这是一个3D场景 在PC端的话还可以按住鼠标左键并拖
  • 数据库-sqlserver数据库迁移到mysql

    文章目录 前言 流程 前言 有时一些sqlserver的数据库需要迁移到mysql上 流程 管理员方式启动mysql的sqlYOG图形化界面 右键对象浏览器导入外部数据库 此处点下一步没有用的 需要先建立dsn 给要建立的dsn文件起个名字
  • 申请被拒模板 (五)

    这里只是模板 仅供学习 出现任何问题 与博主无关 Hi XXXX Thank you for your interest We appreciate the time you took to apply with us At this ti
  • h2 mysql 比较_h2 数据库时间比较

    时间比较的格式是 parsedatetime imp time yyyy MM dd hh mm ss en GMT gt parsedatetime 2012 06 07 00 00 00 yyyy MM dd hh mm ss en G
  • 多态、object类、package、Integer类、String和int类型之间的转换

    多态 多态即为事物存在的多种形态 多态存在的前提 要有继承关系 要有方法的重写 父类引用指向子类对象 多态中的成员访问特点 成员变量 编译看左边 父类 运行看左边 父类 成员方法 编译看左边 父类 运行看右边 子类 静态方法 编译看左边 父
  • MySQL使用binlog日志做数据恢复

    MySQL的binlog日志是MySQL日志中非常重要的一种日志 记录了数据库所有的DML操作 通过binlog日志我们可以进行数据库的读写分离 数据增量备份以及服务器宕机时的数据恢复 定期备份固然可以在服务器发生宕机的时候快速的恢复数据
  • 使用MyJRebel获取免费的JRebel授权

    在我们开发Java Web程序的时候 调试就是一个麻烦事情 每次更改类 就需要重启服务器 对于Tomcat这样的小巧服务器来说 重启就重启吧 反正也就是几秒钟的事情 如果使用的是完整的Java EE标准服务器 GlassFish这种 重启的
  • 权威分析@RequestParam和@RequestPart 的区别(官方文档)

    一 今天写了两个文件上传的接口用到了 RequestParam和 RequestPart RequestPart 单文件上传 param file param bucket return RequestMapping uploadFile