EL(Expression Language)表达式语言是在JSP 2.0版本中引入的新特性,它用于JSP文件中的数据访问。这种表达式语言能简化JSP文件中数据访问的代码,可用来替代传统的基于"<%="和"%>"形式的Java表达式,以及部分基于"<%"和"%>"形式的Java程序片段。
自定义JSP标签是用来代替JSP中的Java程序片段的有效途径。大多数Web应用的JSP文件常常要实现一些通用的功能,比如重定向、文件包含、对日期和时间进行格式化输出,以及访问数据库等,此外,这些JSP文件还要实现一些通用的流程控制逻辑,比如用if-else语句来进行条件判断,再比如用while语句或for语句来进行循环操作。
为了提高Web应用的开发效率,SUN公司制定了一组标准标签库的规范,这组标准标签库简称为JSTL(JavaServer Pages Standard Tag Library)。
El基本语法
从JSP 2.0版本开始引进的EL表达式语言是一种简洁的数据访问语言。通过它可以在JSP文件中方便地访问应用程序数据,从而替代传统的基于"<%="和"%>"形式的Java表达式,以及部分基于"<%"和"%>"形式的Java程序片段。
尽管这种EL表达式语言是JSP新版本的一个重要特性,但它并不是一种通用的编程语言,它仅仅是一种数据访问语言。
EL表达式的基本形式为:${var},所有表达式都以"${"符号开头,以"}"符号结尾。如果在JSP文件的模板文本中使用EL表达式,那么表达式的值会输出到网页上。
例如如下Java表达式和EL表达式的作用相同,都用于输出请求参数username:
<%=request.getParameter("username") %>
${param.username}
比较以上两种表达式的形式,可以看出,EL语言使得JSP文件的创建人员(即网页制作者)能用更加简单的语法来访问数据。
EL表达式和Java表达式一样,既可以直接插入到JSP文件的模板文本中,也可以作为JSP标签的属性的值,例如以下<jsp:setProperty>标签的value属性的值为EL表达式${myPageBean. count+1}:
<jsp:useBean id="myPageBean" scope-"page" class="com.xdl.el.CounterBean" />
<jsp:setProperty name="myPageBean" property="count" value="${myPageBean.count+1" />
Current count values is : ${myPageBean.count}
原文地址:https://blog.51cto.com/14311187/2390198