第1个 pageContext ,和java代码中的pageContext一样可以获取到request,response之类的对象
例子:
<%--第1个 pageContext 代表了javax.servlet.jsp.PageContext对象--%>
${pageContext }<br>
<%--在EL中获取HttpServletRequest对象 --%>
${pageContext.request }<br>
<%--在EL中获取当前应用的名称 --%>
${pageContext.request.contextPath }<br>
<%--获取当前编码 --%>
${pageContext.response.characterEncoding }<br>
第2,3,4,5个pageScope,requestScope,sessionScope,applicationScope就是${}获取参数时可以指定从4大域中的其中一个获取到
例子:
<%--第2,3,4,5个 pageScope requestScope sessionScope applicationScope--%>
<%--对应4大域对象 只能取得各自域内的传过来的值 --%>
<jsp:useBean id="p" class="domain.Person" scope="page"></jsp:useBean>
<jsp:setProperty property="name" name="p" value="xixix"/>
<%
pageContext.setAttribute("qq", p,pageContext.SESSION_SCOPE);
pageContext.setAttribute("qq1", "aasda", pageContext.APPLICATION_SCOPE);
%>
${pageScope.qq.name }<br>
${requestScope.qq.name}<br>
${sessionScope.qq.name }<br>
${applicationScope.qq1 }<br>
${pageScope.qq1 }<br>
第6,7个param,paramValues就是代表请参数,key是参数名,value是参数值,param是字符串,paramValues是字符数组
例子:
${param.username}===----
${param.password }<br>
${paramValues}<br>
${paramValues.username[0]} <br>====
${paramValues.password[0] }<br>
${paramValues.username[1] }<br>
${paramValues.sex[0] }
在浏览器?后输入的是username=xxx&username=yyy&password=zzz&sex=aaa,xxx,yyy,zzz,aaa所代表的是自己想输入的参数
第8,9个header,headerValues就是浏览器的消息报头,key是报头名,value是报头值,header是字符器,headerValues是字符数组
例子:
${header }<br>
${header["accept-encoding"] }<br><%--这里因为accept-encoding有“-”,不符合定义,所以可以用中括号 --%>
${headerValues["accept-encoding"][0] }<br>
${headerValues["accept-encoding"][1] }<br>
${header["user-agent"] }
第10个cookie就是客户端的cookie,key是cookie名,value是cookie对象本身
例子:
${cookie["JSESSIONID"].name }<br>
${cookie.JSESSIONID.value }<br>
<%
Cookie cookie = new Cookie("xxi","qqi");
cookie.setMaxAge(Integer.MAX_VALUE);
cookie.setPath(request.getContextPath());
response.addCookie(cookie);
%>
${cookie["xxi"].name }<br>
${cookie.xxi.value }<br>
第11个initparam代表着全局初始化参数(web.xml中context-param) key是参数名称 value是参数值
在web.xml设置了
<context-param>
<param-name>xxl</param-name>
<param-value>llx</param-value>
</context-param>
${initParam.xxl }可以取得值llx