gpt4 book ai didi

java - 为什么 ${!blabla.blibli} 在 JSTL 中返回 true 即使 blabla 不存在?

转载 作者:塔克拉玛干 更新时间:2023-11-02 19:59:03 24 4
gpt4 key购买 nike

正如标题中提到的,我不明白为什么当变量 blabla 不存在时我有:

${blabla.blabla} 什么都不返回

${!blabla.blabla} 返回 true

我猜想在 jSTL 评估中有一个隐式异常捕获,但我无法理解内部过程以及为什么它会这样工作,尤其是当我们使用以下语言时:not empty和其他检查器组件。背后的逻辑是什么?

最佳答案

JSP ELNULL 友好的,如果给定的属性没有找到或者表达式返回null,它不会抛出任何异常。

对于算术运算,EL 将 null 视为 0,对于逻辑运算,EL 将 null 视为 false .

所以当你尝试“!”对于未找到的变量,它返回 true

希望这对您有所帮助!

关于java - 为什么 ${!blabla.blibli} 在 JSTL 中返回 true 即使 blabla 不存在?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30864500/

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