EL表达式隐含对象

EL表达式语言中定义了11个隐含对象,使用这些隐含对象可以很方便地获取web开发中的一些常见对象,并读取这些对象的数据。
语法:${隐式对象名称}  :获得对象的引用
复制代码
 1 <%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
 2 <%@page import="com.yyz.User"%>
 3 <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
 4 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
 5 <html>
 6   <head>
 7     <title>隐含对象</title>
 8   </head>
 9   <body>
10     <!-- pageContext——对应于JSP页面中的pageContext对象(注意:取的是pageContext对象。)-->
11     ${pageContext }  <!-- pageContext.findAttribute("name") -->
12    <br/>
13     
14     <br/>---------------从指定的page域中查找数据------------------------<br/>
15     <!-- pageScope——代表page域中用于保存属性的Map对象 -->
16     <% 
17         pageContext.setAttribute("name","aaa");  //map
18     %>
19     ${pageScope.name }
20    
21     <br/>---------------从request域中获取数据------------------------<br/>
22     <!-- requestScope——代表request域中用于保存属性的Map对象 -->
23        <% 
24            request.setAttribute("name","bbb");  //map
25        %>
26        ${requestScope.name }
27        
28        <br/>---------------从session域中获取数据------------------------<br/>
29        <!-- sessionScope——代表session域中用于保存属性的Map对象 -->
30        ${sessionScope.user }
31        
32        <!--applicationScope——代表application域中用于保存属性的Map对象  -->
33        
34        <br/>--------------获得用于保存请求参数map,并从map中获取数据------------------------<br/>
35        <!-- param——表示一个保存了所有请求参数的Map对象 -->
36        <!-- http://localhost:8080/day12/3.jsp?name=aaa  -->
37        ${param.name }  
38            <!-- 此表达式会经常用在数据回显上 -->
39            <!-- 模拟的应用场景是表单提交到后台校验没有通过,回到注册页面时的数据回显 -->
40        <form action="${pageContext.request.contextPath }/servlet/RegisterServlet" method="post">
41            <input type="text" name="username" value="${param.username }">
42            <input type="submit" value="注册">
43        </form>
44        
45            <br/>--------------paramValues获得请求参数 //map{"",String[]}------------------------<br/>
46            <!-- paramValues——表示一个保存了所有请求参数的Map对象,它对于某个请求参数,返回的是一个string[] -->
47        <!-- http://localhost:8080/day12/3.jsp?like=aaa&like=bbb -->
48        ${paramValues.like[0] }  
49        ${paramValues.like[1] } 
50        
51            <br/>--------------header获得请求头------------------------<br/>
52            <!-- header——表示一个保存了所有http请求头字段的Map对象 -->
53        ${header.Accept } 
54        ${header["Accept-Encoding"] }<!-- 通过.运算符解决不了,用[] -->
55        
56        <br/>--------------获取客户机提交的cookie------------------------<br/>
57        <!-- cookie——表示一个保存了所有cookie的Map对象 -->
58        <!-- 从cookie隐式对象中根据名称获取到的是cookie对象,要想获取值,还需要.value -->
59        ${cookie.JSESSIONID.value }  
60        
61        <br/>--------------获取web应用初始化参数------------------------<br/>
62        <!-- initParam——表示一个保存了所有web应用初始化参数的map对象 -->
63        ${initParam.xxx }  //servletContext中用于保存初始化参数的map
64        ${initParam.root }
65   </body>
66 </html>
复制代码

注意事项

1.测试headerValues时,如果头里面有“-” ,例Accept-Encoding,则要headerValues[“Accept-Encoding”]
2.测试cookie时,例${cookie.key}取的是cookie对象,如访问cookie的名称和值,须${cookie.key.name}或${cookie.key.value
posted on   Cherishyao  阅读(2516)  评论(0编辑  收藏  举报
努力加载评论中...

点击右上角即可分享
微信分享提示