定义:
EL表达式中的11个隐含对象,是EL表达式中自己定义的,可以直接使用。
变量 | 类型 | 作用 |
---|---|---|
pageContext | PageContextImpl | 它可以获取jsp中的九大内置对象 |
pageScope | Map<String,Object> | 它可以获取pageContext域中的数据 |
requestScope | Map<String,Object> | 他可以获取request域中的数据 |
sessionScope | Map<String,Object> | 它可以获取session中的数据 |
applicationScope | Map<String,Object> | 它可以获取application域中的数据 |
param | Map<String,String> | 它可以获取请求参数的值 |
paramValues | Map<String,String[]> | 它也可以获取请求参数的值,获取多个值的时候使用 |
header | Map<String,String> | 它可以获取请求头的信息 |
headerValues | Map<String,String[]> | 它也可以获取请求头的信息,它可以获取多个值的情况 |
cookie | Map<String,Cookie> | 它可以获取当前请求的cookie信息 |
initParam | Map<String,String> | 它可以获取在web.xml中配置的<content-param>上下文参数 |
EL获取四个特定域中的属性:
pageScope ===== pageContext域
requestScope ===== Request域
sessionScope ===== Session域
applicationScope ===== ServletContext域
pageContext对象的使用:
<%--
request.getScheme() 获取请求的协议
request.getServerName() 获取请求的服务器ip或域名
request.getServerPort() 获取请求的服务器端口号
request.getContextPath() 获取当前工程路径
request.getMethod() 获取请求的方式(GET或POST)
request.getRemoteHost() 获取客户端的ip地址
session.getId() 获取会话的唯一标识
--%>
<%= session.getId() %> <br>
1.协议:${ pageContext.request.scheme } <br>
2.服务器ip:${ pageContext.request.serverName } <br>
3.服务器端口:${ pageContext.request.serverPort } <br>
4.获取工程路径:${ pageContext.request.contextPath} <br>
5.获取请求方法:${ pageContext.request.method } <br>
6.获取客户端IP地址:${ pageContext.request.remoteHost } <br>
7.获取会话的id编号:${ pageContext.session.id } <br>
EL表达式其他隐含对象的使用:
param Map<String,String> 它可以获取请求参数的值
paramValues Map<String,String[]> 它也可以获取请求参数的值,获取多个值的时候使用
示例代码:
输出请求参数username的值:${ param.username }<br>
输出请求参数password的值:${ param.password }<br>
输出请求参数username的值:${ paramValues.username[0] }<br>
输出请求参数password的值:${ paramValues.hobby[0] }<br>
输出请求参数password的值:${ paramValues.hobby[1] }<br>
请求地址:
http://localhost:8080/09_EL_JSTL/other_el_obj.jsp?username=bbj&password=root&hobby=java&hobby=cpp
header Map<String,String> 它可以获取请求头的信息
headerValues Map<String,String[]> 它也可以获取请求头的信息,它可以获取多个值的情况
示例代码:
输出请求头的[User-Agent]的值:${ header["User-Agent"] }<br>
输出请求头的[Connection]的值:${ header.Connection }<br>
输出请求头的[User-Agent]的值:${ headerValues["User-Agent"][0] }<br>
cookie Map<String,Cookie> 它可以获取当前请求的cookie信息
示例代码:
获取Cookie的名称:${ cookie.JSESSIONID.name }<br>
获取Cookie的值:${ cookie.JSESSIONID.value }<br>
initParam Map<String,String> 它可以获取在web.xml中配置的<content-param>上下文参数
示例代码:
输出<Context-param>中username的值:${ initParam.username }<br>
输出<Context-param>中password的值:${ initParam.password }<br>