SpringMVC中使用@PathVariable绑定路由中的数组的方法
作者:潘佳琦 发布时间:2023-11-27 14:21:01
标签:SpringMVC,@PathVariable,绑定,数组
问题描述
在开发批量删除功能时,往往都是多条数据,所以前台需要传一个数组给后台,但是怎么在URL
中绑定一个数组,同时在后台用@PathVariable
来绑定呢?
原来的做法
后台:
前台:
以上是之前项目的截图,直接拿过来啦!!!😁😁😁
后台以@RequestBody接收一个数组,但是前台需要发送一个request请求, 传入请求方法的类型delete, 并且传入一个body, 但在写华软项目时, 张喜硕组长看到,说这样写并不好,要在url中绑定一个数组,在前台以逗号隔开。delete方法是不建议传输实体的主体
delete请求用于请求服务器删除所请求URI(统一资源标识符,Uniform Resource Identifier)所标识的资源。DELETE请求后指定资源会被删除
该如何解决呢?如何在url
绑定数组呢?
解决方法
后台:
@DeleteMapping("{clusterNodeId}/hosts/{hostsId}")
public void deleteClusterNodeByHostList(@PathVariable Long clusterNodeId, @PathVariable Long[] hostsId) {
clusterNodeService.deleteClusterNodeByHostList(clusterNodeId, hostsId);
}
由url
接收一个数组,使用@PathVariable
绑定这个数组
前台:
public deleteClusterNodeByHostList(
clusterNodeId: number,
hostsId: any[]): Observable<ClusterNode> {
return this.http.delete(`${this.baseUrl}/${clusterNodeId.toString()}/hosts/${hostsId.join(',')}`);
}
使用join 对数组进行处理,以逗号的形式隔开,传给后台
url:
后台接收:
来源:https://segmentfault.com/a/1190000019741292


猜你喜欢
- QTableWidget 是 Qt 中的表格组件类。在窗体上放置一个 QTableWidget 组件后,可以在 Property Edito
- Eclipse Che被Eclipse官方称为下一代IDE,作为老牌的IDE,被其寄予厚望的Eclipse Che到底有什么特点,在这篇文章
- 描述项目中用到boot 整合 mybatis-plus , 个人在使用分页条件查询的时候一直查不出 total, pages, 终于找到原因
- " 梧桐更兼细雨,到黄昏、点点滴滴。"C语言朱武大战数据结构专栏C语言植物大战数据结构快速排序图文示例C语言植物大战数据
- 一、堆参数设置-XX:+PrintGC 使用这个参数,虚拟机启动后,只要遇到GC就会打印日志-XX:+UseSerialGC 配置串行回收器
- 一、枚举类类的对象只有有限个, 确定的. 我们称此类为枚举类.说明:1.类的对象只有有限个,确定的。如:星期:Monday(星期一)、…、S
- 概述由于微信公众平台的特殊机制,所有的信息都由微信服务器转发而来,因此服务器是无法使用Session对用户会话的上下文进行管理的。为此Sen
- 一、C#和JS互相调用 1、js调用C# C#代码如下: webView.CoreWebView2.AddHo
- 1. Vscode安装Visual studio code是微软发布的一个运行于 Mac OS X、Windows和 Linux 之上的,针
- 最近做项目,ORM 使用的是 MyBatis,为了偷懒,我自然而然的想到了使用 MyBatis Generator(MBG)来生成数据库表对
- C#抓图服务首先抽象出抓图接口,然后对接口做基于公共操作的抽象类封装,之后针对不同的抓图方式做差异化处理,最后根据接口实现抓图服务。注意:W
- 1、IndexTagController.java@GetMapping("/tags/{id}") &n
- SkiaSharp 自绘弹幕效果框架使用.NET60;Visual Studio 2022;项目使用 MIT 开源许可协
- 本文实例讲述了C#执行存储过程并将结果填充到GridView的方法。分享给大家供大家参考,具体如下:SelectSql sq = new S
- java swing GUI窗口美化一般我们写出的窗口是这个样子的,文本框和按钮都不是太美观,如果按钮是原色的就更难看了。今天发现了一个更加
- 一. Thread.yield( )方法:使当前线程从执行状态(运行状态)变为可执行态(就绪状态)。cpu会从众多的可执行态里选择,也就是说
- 前言本文主要介绍了如果通过输入年份月份输出天数的相关内容,下面话不多说了,来一起看看详细的介绍吧示例代码package com.ambow.
- java 设计模式之单例模式前言:在软件开发过程中常会有一些对象我们只需要一个,如:线程池(threadpool)、缓存(cac
- 准备:wildfly/tomcat或者其他服务器你的数据库的Driver,(此处用的mysql-connecter-java-5.1.39-
- Statement 和 PreparedStatement之间的关系和区别. 关系:Prepa