gpt4 book ai didi

java - 如何在 Java 中将多个 Map/List/Array 从 API url 传递到 RestController?

转载 作者:行者123 更新时间:2023-12-01 17:53:54 24 4
gpt4 key购买 nike

我有一个方法,它接受 ArrayList、HashMap 和 List 作为参数以及其他参数。

methodName(String request,
ArrayList<String> referenceList,
HashMap<String, String> params,
Map<String, List<?>> inClause,
boolean isClassicFlatSuggestionBox) throws Exception {};

现在我知道如何接受普通字符串参数和来自 url 的单个 Map/List。

http://localhost:8888/restApi/getSuggestionData/sa/warehouse?number=20,age=4

这个url返回2个路径变量字符串参数以及 Controller 上的数字和年龄的映射,如下所示

public ResponseEntity<Collection<?>> getSuggestionList(@PathVariable("request") String request,@PathVariable("reference") String reference, @RequestParam HashMap<String, String> params)

但是如何传递多个 map 呢?我无法将所有内容放在一张 map 中,然后在 Controller 端进行操作。有没有办法直接在 Controller 端获取多个 map /列表?

最佳答案

我建议将其更改为 POST 并添加包含必要对象的有效负载。那么你的 Controller 方法将如下所示:

    @POST
public ResponseEntity<Collection<?>> getSuggestionList(
@PathVariable("request") String request, @PathVariable("reference") String reference, @RequestBody() Payload payload) { }

Payload 类包含您想要的列表:

public class Payload {

@XmlElement
private ArrayList<String> referenceList;

@XmlElement
private HashMap<String, String> params;

// getters and setters here or Lombok :)
}

关于java - 如何在 Java 中将多个 Map/List/Array 从 API url 传递到 RestController?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60751743/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com