首页 > 解决方案 > 如何将 URL 参数的空值传递给 Spring MVC 控制器?

问题描述

假设我有一个这样的 Java Spring MVC 控制器方法:

@RequestMapping(value="showuser", method={RequestMethod.GET})
public ModelAndView showUser(Model model, @RequestParam Map<String,String> requestParams) throws Exception {

用户具有三个字段(名字、中间名、姓氏),所有这些字段都是该记录的唯一 ID 的一部分。

并且中间名可以为 NULL。

我这样做是为了查看用户...

http://localhost:8080/myapp/viewuser?firstname=Bob&middlename=Tiberius&lastname=Jones

middlename为 NULL 时,我的代码目前没有传递中间名的值,就像这样......

http://localhost:8080/myapp/viewuser?firstname=Bob&middlename=&lastname=Jones

...但不起作用,因为在requestParams地图中,值middlename被设置为空字符串,而不是 NULL。

我需要该值为 NULL,而不是空字符串。

如何传递 NULL 作为middlename参数的值?

我搜索并找到了其他说使用%00%A0获取价值的答案,但这些都不起作用。有任何想法吗?

标签: javahttpspring-mvcurl

解决方案


不要从前端发送中间名


推荐阅读