当前位置: 首页 > article >正文

【SpringMVC】传递json,获取url参数,上传文件

【传递json数据】

【json概念】

一种轻量级数据交互格式,有自己的格式和语法,使用文本表示一个对象或数组的信息,其本质上是字符串,负责在不同的语言中数据传递与交换

json数据以字符串的形式体现

【json字符串与Java对象互转】

我们需要在pom.xml中增加对json的依赖

【对象转json】

导入的相关包中,有着「ObjectMapper」这样的类,可以用于转化成json数据

可以通过这个类构造出对象,并调用「writeValueAsString」方法,可以达到「对象转json」的效果

【json转对象】

通过这个类的对象调用「readValue」方法,可以达到「json转对象」的效果

【传递json数据】

需要使用「@RequestBody」注解

即:从请求正文中拿到数据

【获取url中的参数@PathVariable】

需要使用「@PathVariable」注解

而在注解RequestMapping中,用一个大括号{}存放url中的参数

这段url末尾的“1”就是RequestMapping注解中大括号内的articleId,这是一个变量

因此,结果就是【articleId:1】

我们要确保后端的参数与前端RequestMapping注解中大括号内的参数相同,如果不同,我们就要在PathVariable注解中填写前端的参数来进行重命名

【获取多个参数】

一个大括号可以理解为一个参数的占位符

这个url的运行结果是:

【articleId:1,name:zhangsan】

但如果使用这样的方式,如果只传了一个参数,就会报404错误,虽然PathVariable的源码中,也有一个boolean类型的required方法默认为true,但当我们设置required属性为false时,也发生了404报错

这是因为路径是绝对不能变化的,规定传了几个参数就必须传几个,位置顺序也不允许变化

【上传文件@RequestPart】


http://www.kler.cn/a/378564.html

相关文章:

  • GR2——在大规模视频数据集上预训练且机器人数据上微调,随后预测动作轨迹和视频(含GR1详解)
  • PHP常量
  • c语言 变量类型总结
  • Jest进阶知识:React组件的单元测试
  • C++线程异步
  • 批量删除redis数据【亲测可用】
  • Redis-结构化value对象的类型
  • GBDT算法Python代码实现
  • HTML5和CSS3 介绍
  • 加强版 第六节 图像轮廓几何属性分析
  • 无人机维修培训班开班课程技术详解
  • 「Mac畅玩鸿蒙与硬件17」鸿蒙UI组件篇7 - Animation 组件基础
  • npm入门教程17:准备发布的npm包
  • 家具制造的效率与美观并重,玛哈特矫平机让家具产品更具竞争力。
  • 2024前端面试训练计划-高频题-网络基础篇
  • QT中TextEdit或者QLineEdit以十六进制显示数组数据
  • uni-app 下拉刷新、 上拉触底(列表信息)、 上滑加载(短视频) 一键搞定
  • nginx配置转发到elk的kibana的服务器
  • 【开发工具——依赖管理工具——Maven】
  • unity c# Tcp网络通讯
  • C++ 函数调用时的参数传递方法
  • 线性数据结构之队列
  • 【读书笔记/深入理解K8S】集群控制器
  • 《GBDT 算法的原理推导》 11-15更新决策树的叶子节点值 公式解析
  • mac 系统下载 vscode
  • 如何设置使PPT的画的图片导出变清晰