推荐答案
在 JSP 中,EL(Expression Language)表达式可以访问以下对象:
- pageScope:访问页面作用域中的属性。
- requestScope:访问请求作用域中的属性。
- sessionScope:访问会话作用域中的属性。
- applicationScope:访问应用作用域中的属性。
- param:访问请求参数,通常是表单提交的数据。
- paramValues:访问请求参数的多个值(例如复选框或下拉列表的多选值)。
- header:访问 HTTP 请求头信息。
- headerValues:访问 HTTP 请求头的多个值。
- cookie:访问客户端的 Cookie。
- initParam:访问 Web 应用的初始化参数。
- pageContext:访问 JSP 的
pageContext对象,从而可以访问其他隐含对象(如request、response、session等)。
本题详细解读
1. pageScope
pageScope 用于访问页面作用域中的属性。页面作用域仅在当前 JSP 页面内有效。
${pageScope.attributeName}2. requestScope
requestScope 用于访问请求作用域中的属性。请求作用域在一次 HTTP 请求中有效。
${requestScope.attributeName}3. sessionScope
sessionScope 用于访问会话作用域中的属性。会话作用域在一次用户会话中有效。
${sessionScope.attributeName}4. applicationScope
applicationScope 用于访问应用作用域中的属性。应用作用域在整个 Web 应用的生命周期内有效。
${applicationScope.attributeName}5. param
param 用于访问请求参数,通常是表单提交的数据。它返回单个值。
${param.parameterName}6. paramValues
paramValues 用于访问请求参数的多个值。它返回一个数组。
${paramValues.parameterName[0]}7. header
header 用于访问 HTTP 请求头信息。它返回单个值。
${header.headerName}8. headerValues
headerValues 用于访问 HTTP 请求头的多个值。它返回一个数组。
${headerValues.headerName[0]}9. cookie
cookie 用于访问客户端的 Cookie。它返回一个 javax.servlet.http.Cookie 对象。
${cookie.cookieName.value}10. initParam
initParam 用于访问 Web 应用的初始化参数。这些参数通常在 web.xml 中配置。
${initParam.parameterName}11. pageContext
pageContext 用于访问 JSP 的 pageContext 对象,从而可以访问其他隐含对象(如 request、response、session 等)。
${pageContext.request.contextPath}