推荐答案
在 JSP 中,EL(Expression Language)表达式提供了以下隐式对象:
- pageContext:提供对 JSP 页面上下文的访问。
- pageScope:用于访问页面作用域中的属性。
- requestScope:用于访问请求作用域中的属性。
- sessionScope:用于访问会话作用域中的属性。
- applicationScope:用于访问应用程序作用域中的属性。
- param:用于访问请求参数,通常用于获取单个参数值。
- paramValues:用于访问请求参数,通常用于获取多个参数值(如复选框或下拉列表)。
- header:用于访问 HTTP 请求头信息。
- headerValues:用于访问 HTTP 请求头信息,通常用于获取多个头信息值。
- cookie:用于访问客户端发送的 Cookie。
- initParam:用于访问上下文初始化参数。
本题详细解读
1. pageContext
pageContext
是 JSP 页面上下文的隐式对象,提供了对 JSP 页面中所有其他隐式对象的访问。通过 pageContext
,可以获取请求、响应、会话、应用程序等对象。
2. pageScope
pageScope
用于访问页面作用域中的属性。页面作用域是 JSP 页面中最小的作用域,仅在当前页面有效。
3. requestScope
requestScope
用于访问请求作用域中的属性。请求作用域在同一个请求中有效,通常用于在请求转发时传递数据。
4. sessionScope
sessionScope
用于访问会话作用域中的属性。会话作用域在用户会话期间有效,通常用于存储用户登录信息等。
5. applicationScope
applicationScope
用于访问应用程序作用域中的属性。应用程序作用域在整个 Web 应用程序的生命周期内有效,通常用于存储全局数据。
6. param
param
用于访问请求参数,通常用于获取单个参数值。例如,${param.username}
可以获取名为 username
的请求参数。
7. paramValues
paramValues
用于访问请求参数,通常用于获取多个参数值。例如,${paramValues.hobbies}
可以获取名为 hobbies
的请求参数的所有值。
8. header
header
用于访问 HTTP 请求头信息。例如,${header['User-Agent']}
可以获取 User-Agent
请求头的值。
9. headerValues
headerValues
用于访问 HTTP 请求头信息,通常用于获取多个头信息值。例如,${headerValues['Accept-Language']}
可以获取 Accept-Language
请求头的所有值。
10. cookie
cookie
用于访问客户端发送的 Cookie。例如,${cookie.JSESSIONID.value}
可以获取名为 JSESSIONID
的 Cookie 的值。
11. initParam
initParam
用于访问上下文初始化参数。例如,${initParam.appName}
可以获取名为 appName
的上下文初始化参数。