JSP收拾(二) EL表达式
JSP整理(二) EL表达式
JSP表达式语言(EL)使得访问存储在JavaBean中的数据变得非常简单。JSP EL既可以用来创建算术表达式也可以用来创建逻辑表达式。在JSP EL表达式内可以使用整型数,浮点数,字符串,常量true、false,还有null。
有效表达式可以包含文字、操作符、变量(对象引用)和函数调用。
1、语法结构
${expression}
2、[ ]与.运算符
EL 提供“.“和“[ ]“两种运算符来存取数据。当要存取的属性名称中包含一些特殊字符,如.或?等并非字母或数字的符号,就一定要使用“[ ]“。
${student.name} ${studentList[0].name} <!-- ${ student.My-Name} 写法不正确,应该改为下面这种 --> ${student["My-Name"]}
3.JSP EL隐含对象
pageScope | page 作用域 |
requestScope | request 作用域 |
sessionScope | session 作用域 |
applicationScope | application 作用域 |
param | Request 对象的参数,字符串 |
paramValues | Request对象的参数,字符串集合 |
header | HTTP 信息头,字符串 |
headerValues | HTTP 信息头,字符串集合 |
initParam | 上下文初始化参数 |
cookie | Cookie值 |
pageContext | 当前页面的pageContext |
(1)pageContext对象
pageContext对象是JSP中pageContext对象的引用。通过pageContext对象,您可以访问page、request、response、exception、servletConfig对象。
${pageContext.session } ${pageContext.request.queryString }
(2)Scope对象
pageScope,requestScope,sessionScope,applicationScope变量用来访问存储在各个作用域层次的变量。${expression}时依序从Page、Request、Session、Application范围查找。
假如途中找到expression,就直接回传,不再继续找下去,但是假如全部的范围都没有找到时,就回传null。
(3)param和paramValues对象
param和paramValues对象用来访问参数值,通过使用request.getParameter方法和request.getParameterValues方法。
${param["username"]}
(4)header和headerValues对象
header和headerValues对象用来访问信息头,通过使用 request.getHeader方法和request.getHeaders方法。
${header.user-agent} ${header["user-agent"]}