我在其中一个JSP教程和测试中遇到过这个问题。
这三个对象中哪一个可以在表达式和scriplets中使用而不必明确声明它们?
答案 0 :(得分:1)
我们可以在Jsp中使用它们而不需要明确声明。
答案 1 :(得分:1)
它们被称为隐式对象,它们都在Java EE tutorial中列出。为了将来参考,这里是相关的摘录:
Implicit Objects
JSP表达式语言定义了一组隐式对象:
pageContext
:JSP页面的上下文。提供对各种对象的访问,包括:
servletContext
:JSP页面的servlet的上下文以及同一应用程序中包含的任何Web组件。请参阅Accessing the Web Context。
session
:客户端的会话对象。请参阅Maintaining Client State。
request
:触发JSP页面执行的请求。请参阅Getting Information from Requests。
response
:JSP页面返回的响应。请参阅Constructing Responses。此外,还有几个隐式对象可以轻松访问以下对象:
param
:将请求参数名称映射到单个值
paramValues
:将请求参数名称映射到值数组
header
:将请求标头名称映射到单个值
headerValues
:将请求标头名称映射到值数组
cookie
:将Cookie名称映射到单个Cookie
initParam
:将上下文初始化参数名称映射为单个值最后,有些对象允许访问Using Scope Objects中描述的各种范围变量。
pageScope
:将页面范围的变量名称映射到其值
requestScope
:将请求范围的变量名称映射到其值
sessionScope
:将会话范围的变量名称映射到其值
applicationScope
:将应用程序范围的变量名称映射到其值