gpt4 book ai didi

java - 如何使用RequestParam获取参数的名称和值?

转载 作者:行者123 更新时间:2023-11-30 05:28:11 24 4
gpt4 key购买 nike

我想使用 RequestMapping 获取 URL 参数的名称和值。

例如,如果我传入 URL http://localhost:8080/assignment2/trafficcameras?ip_comm_status=bad

我想将参数名称隔离为“ip_comm_status”。

参数值为“bad”。

如何访问任何参数对的名称和值?

问题是我知道如何获取值,但不知道参数的名称。

ip_comm_status和camera_status是我的有效参数名称。

到目前为止我已经:

    @ResponseBody
@RequestMapping(value = "/trafficcameras", params = {"ip_comm_status", "camera_status"}, method = RequestMethod.GET)
public String parseParams(@RequestParam(value = "ip_comm_status", required = false) String ip_comm_status_val,
@RequestParam(value = "camera_status", required = false) String camera_status_val) {


}

最佳答案

您可以使用Map<String, String>获取全部request param名称和值

如果方法参数为Map<String, String>MultiValueMap<String, String>并且未指定参数名称,则使用所有请求参数名称和值填充映射参数。

这是来自 baeldung 的示例

We can also have multiple parameters without defining their names or count by just using Map

@PostMapping("/api/foos")
@ResponseBody
public String updateFoos(@RequestParam Map<String,String> allParams) {
return "Parameters are " + allParams.entrySet();
}

然后将反射发送的所有参数

curl -X POST -F 'name=abc' -F 'id=123' http://localhost:8080/api/foos
-----
Parameters are {[name=abc], [id=123]}

关于java - 如何使用RequestParam获取参数的名称和值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58148834/

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