了解如何使用 EL 和 JSP 表达式检索不存在的属性。与先行不一致

Understanding how retrieving non-existing attributes with EL and JSP expression works. Inconsistency with Head First

我可以通过两种方式检索 JSP 中的属性。使用 JSP expressionsEL。如果在这两种情况下给定的属性不存在会发生什么?让我们试试吧(用户不存在):

<html><body>

--- <br>
<%=application.getAttribute("user") %>
<br>
--- <br>
${applicationScope.user}
<br>
---

</body></html>

输出:

 --- 
 null 
 --- 

 ---

我从这里了解到的是 EL 给出空 space,而 JSP 表达式给出 NULL .但是在阅读 Head First JSP 和 Servlet 时,我遇到了与此屏幕截图中所述完全不同的解释。

它说他们 都给出空的 space,正如我所展示的,这是不正确的。有人能猜出这是什么情况吗?我怀疑他们在著名的书中犯了这样的错误。

书是人写的,人也会犯错。你抓住那个是正确的。它应该在第二个示例中打印 null。

其实书里有a bunch of other errors。在这种情况下,勘误表显示如下: