JSP核心表达式与标签

JSP核心表达式与标签
JSP表达式
1.JSP表达式简介
表达式语言(EL)是JSP2.0版本之后引入的新功能,该语言是一种简单,容易使用的语言并且可以使用标签快速的访问JSP的隐含对象和JavaBean组件。
表达式语言虽然是一种简单的语言,但它可以非常方便的操作各种算术、关系、逻辑或空值测试运算符,从而提高运算效率。
调用El表达式的一般格式如下:
expression{expression} 注意:和{}不要漏写,它是组成EL表达式不可缺少的一部分。
2.JSP表达式使用
(1)JSP表达式使用 (1)
例如:

<table width="241" height="96">
  <tr>
    <td align="center" bgcolor="#FFFFFF">6-2=${6-2}</td>
  </tr>
  <tr>
    <td align="center" bgcolor="#FFFFFF">4*6=${4*6}</td>
  </tr>
</table> 

运行结果如图所示:
JSP核心表达式与标签
(2)JSP表达式使用 (2)
在JSP标准动作元素中使用EL表达式的方法:
(1)标准动作元素的属性中只包含一个表达式时,该表达式结果将会自动转换成属性所对应的数据类型,其语法格式如下:
<jsp:tag value=”expression/&gt;2&lt;jsp:tagvalue={expression}”/&gt; (2)标准动作元素的属性中包含多个表达式时,按照规则从左到右计算表达式的结果,然后该表达式结果将自动转换成属性所对应的数据类型。其语法格式如下: &lt;jsp:tag value=”{expression}expression{expression}{expression}……”/>
(3)JSP表达式使用 (3)
(3)标准动作元素的属性中包含一个或多个表达式并且该表达式与文本相结合时,按照规则,从左到右,并且将文本和表达式相连接,从而计算出以字符串形式输出的表达式结果,然后该字符串将自动转换成属性所对应的数据类型。其语法格式如下:
<jsp:tag value=”text ${expression} text expressiontext{expression} text{expression}”/>
(4)根据实际的需要,标准动作元素的属性中有时只包含文本,此时,该文本可以当成EL表达式的字符串常量来处理。因此,可以把字符串常量作为表达式结果自动转换成属性所对应的数据类型。其语法格式如下:
<jsp:tag value=”text”/>
3.访问作用域变量
使用EL表达式访问作用域变量的一般格式如下:
${attrname}
该语句将按照“page”→“request”→“session”→“application”的顺序查找并输出该属性所对应的数据。 例如,在不同的作用域范围内设置变量:
request.setAttribute(“sx1”, “长春”); //request作用域
HttpSession session=request.getSession();
session.setAttribute(“sx2”, “吉林省”); //session作用域
ServletContext application=getServletContext();
application.setAttribute(“time”, new java.util.Date());
创建JSP页面文件,该页面文件获取到不同作用域的数据,该页面的关键代码如下:
(1)访问作用域变量 (2)

<table width="474" border="1">
  <tr>
    <td width="208" height="30">requestScope作用域</td>
    <td width="253">${sx1}</td>
  </tr>
  <tr>
    <td height="30">sessionScope作用域</td>
    <td>${sx2}</td>
  </tr>
  <tr>
    <td height="30">applicationScope作用域</td>
    <td>${time}</td>
  </tr>
</table> 

程序运行结果如图所示。
JSP核心表达式与标签
4.JSP表达式隐藏对象
JSP表达式的隐藏对象按其访问环境的不同可分为3大类:
(1)通过pageContext对象访问JSP其它内置隐藏对象如表所示。

JSP核心表达式与标签

(2)用于访问环境信息的对象如表所示。

JSP核心表达式与标签

JSP表达式隐藏对象 (2)
(3)访问作用域范围的隐藏对象如表8-3所示。

JSP核心表达式与标签