是否可以在 ${...} 表达式中将 NULL 作为参数传递?
Is it possible to pass NULL as argument in ${...} expression?
我正在使用 Spring 和 Thymeleaf。
我需要从当前 url 中删除一个参数,我正在做这样的事情:
urlBuilder=${T(org.springframework.web.servlet.support.ServletUriComponentsBuilder).fromCurrentRequest()},
currentUrl=${urlBuilder.replaceQueryParam('page',null).build()
然而,null
值实际上不是空的。如果我调试该行,该参数的值不是 null 而是一个空对象,这是屏幕截图:
有什么方法可以从 SpEL 传递真实的 null
吗?
构建器组件的行为在这两种情况下略有不同,因为当您传递 null 时,查询参数将被删除。在给定的示例中,查询参数保留在 URL.
您正在调用 varargs 方法。 null 被包装到一个包含一个 null 元素(不被视为空)的数组中。解决方法是省略空参数:
urlBuilder.replaceQueryParam('page')
我正在使用 Spring 和 Thymeleaf。 我需要从当前 url 中删除一个参数,我正在做这样的事情:
urlBuilder=${T(org.springframework.web.servlet.support.ServletUriComponentsBuilder).fromCurrentRequest()},
currentUrl=${urlBuilder.replaceQueryParam('page',null).build()
然而,null
值实际上不是空的。如果我调试该行,该参数的值不是 null 而是一个空对象,这是屏幕截图:
有什么方法可以从 SpEL 传递真实的 null
吗?
构建器组件的行为在这两种情况下略有不同,因为当您传递 null 时,查询参数将被删除。在给定的示例中,查询参数保留在 URL.
您正在调用 varargs 方法。 null 被包装到一个包含一个 null 元素(不被视为空)的数组中。解决方法是省略空参数:
urlBuilder.replaceQueryParam('page')