当前位置: 首页 > 知识库问答 >
问题:

如何使用spring mvc使用@RequestParam捕获一些参数?

曹沛
2023-03-14

假设单击一个超链接,并使用以下参数列表myparam1=myValue1触发url

我的要求是我必须捕获一些参数并将请求构建到服务器。我可以让所有的请求参数都是可选的,并在需要时使用吗?

假设我想使用前两个参数,而忽略第三个参数。例如。http://localhost:8080/api?myparam1=myValue1

在下一个场景中,我想使用第二个和第三个参数,并想忽略第一个参数。例如。http://localhost:8080/api?myparam2=myValue2

在另一个场景中,我不想使用任何请求参数。例如。http://localhost:8080/api只是在请求中没有给出任何参数。我有没有办法做到这一点?请帮忙。。。!

共有2个答案

越伯寅
2023-03-14

默认情况下,带有@RequestParam的参数是必需的。可以将其标记为不需要:

@GetMapping
public ResponseEntity<Object> aMapping(@RequestParam String myparam1, @RequestParam String myparam2, @RequestParam(required = false) String myparam3) {
    // response
}
苏彭薄
2023-03-14

您可以在映射中捕获所有参数(键是参数的名称),如下所示:

public void requestAllParams(@RequestParam Map<String, String> params)

您还可以使用可选捕获可选参数,如下所示:

public void requestParamOptional(@RequestParam(required=false) Optional<String> param)

 类似资料:
  • 问题内容: 假设单击了超链接,并使用以下参数列表触发了。现在如何中捕获所有使用的参数? 我的要求是我必须捕获所有参数并将它们放在地图中。 请帮忙! 问题答案: 你可以按上述方式使用RequestParam。

  • 假设单击了一个超链接,并使用以下参数list激发了一个url。现在如何在spring MVC中使用捕获所有参数? 我的要求是我必须捕获所有的参数,并将它们放在一个地图中。

  • 我尝试使用和通过Postman发送JSON和多个文件,但它不起作用。有可能在API中同时使用这两个注释吗?

  • 问题内容: 我用来产生一个长时间运行的进程,该进程会随着时间的推移将输出发送到stdio,并由我的nodejs脚本读取和处理。棘手的是,我不能保证发送的命令将始终有效。如何在生成中捕获错误?最好不要涉及安装全局异常处理程序,因为我不想处理任何其他异常。(如果那是唯一的方法,我将需要弄清楚何时生成的进程已正确启动,然后卸载该处理程序,这是我不愿陷入的一团糟。) 我要运行的代码如下所示: 但这只会在节

  • 问题内容: 例如,假设我有, 看到我需要从输出中获取旧ID和新ID。但是此sql给我错误“无效的列名’ID’。” http://sqlfiddle.com/#!3/a27b2/1 问题答案: 您不能使用传统输出非插入字段。请改用合并(注意:仅在数据库兼容性> = 100时有效):

  • 对于每道菜,我都有一个输入来指定菜的数量,但是如何将它转换为DishQuantityMap?其中firstInteger-dishId,second-订购的菜肴数量。 我知道我的代码中缺少th:字段,这是因为我不知道如何正确地实现它。