是否可以在$ {...}表达式中传递NULL作为参数?
问题描述:
我正在与春天和百里香一起工作。 我需要从当前的URL中移除一个参数,我做这样的考虑:
urlBuilder=${T(org.springframework.web.servlet.support.ServletUriComponentsBuilder).fromCurrentRequest()},
currentUrl=${urlBuilder.replaceQueryParam('page',null).build()
然而,null
值不为空实际。如果我调试线,该参数的值不为空,但空的对象,这里是截图:
有没有办法从规划环境地政司实际传递null
?
两种情况下构建器组件的行为都略有不同,因为当您传递null时,查询参数将被删除。在给定的例子中,查询参数保留在URL上。
答
您正在调用可变参数方法。 null被包装成一个具有一个null元素的数组(不认为是空的)。解决的办法是省略空参数:
urlBuilder.replaceQueryParam('page')
我觉得现在这样愚蠢的....我被测试java代码的误导通过其中'null'确实是空因此希望做同样的规划环境地政司。根本没有考虑到任何理由。谢谢! – Antoniossss