gpt4 book ai didi

java - 如何检查@RequestMapping参数中的请求参数不是空字符串?

转载 作者:IT老高 更新时间:2023-10-28 13:57:10 25 4
gpt4 key购买 nike

在我的 Controller 中,我有 String 参数,其中包含一些 id,它不应该是空字符串的 null。我想知道,有什么方法可以检查@RequestMapping 参数中的字符串是否为空?我试图以某种方式解决它

@RequestMapping(value = someURL, params = {"id"})
public SomeResponse doSomething(@RequestParam(required = true) String id)

@RequestMapping(value = someURL, params = {"!id="})
public SomeResponse doSomething(@RequestParam(required = true) String id)

@RequestMapping(value = someURL, params = {"!id=\"\""})
public SomeResponse doSomething(@RequestParam(required = true) String id)

没有成功。据我了解, params = {"id"}@RequestParam(required = true) 都只能检查参数 id 是否出现在请求(!= null)。

很可能我必须使用 Controller boby 中的代码来检查这一点,例如

if (id == null || id.isEmpty()) {
return someErrorResponse;
}

但如果我错了,请纠正我。提前致谢。

附:我的应用在 Apache Tomcat 7.0.62 容器中的 Java 1.7 SE 上运行

最佳答案

根据使用该注释的 Spring 代码

org.springframework.web.servlet.mvc.annotation.ServletAnnotationMappingUtils.checkParameters(String[], HttpServletRequest)

这样的事情应该可以工作:

@RequestMapping(value = someURL, params = {"id!="})
public SomeResponse doSomething(@RequestParam(required = true) String id)

关于java - 如何检查@RequestMapping参数中的请求参数不是空字符串?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32475877/

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