EL(expression language)

EL(expression language)

简介

EL(表达式语言)可以方便访问Web常用对象的数据。在JSP2开始默认支持,可以避免使用jsp脚本语言,如<%=%>

作用

  1. 获取数据

  2. 执行运算

  3. 获取Web常用对象

  4. 调用java方法

使用

1.EL语法:${expression} 如 ${user}

2.EL提供 . 与 [ ] 两种方式来获取数据。如 ${user.name}

3.EL内置对象:
pageContext --- 代表该JSP的pageContext对象。
pageScope ---- 用于获取 page 范围的属性值。
requestScope --- 用于获取 request 范围的属性值。
sessionScope --- 用于获取 session 范围的属性值。
applicationScope --- 用于获取 application 范围的属性值。
paramValues、param --- 用于获取请求的参数值。
header、headerValues --- 用户获取http请求头的属性值。
initParam --- 用户获取请求Web应用的初始化参数。
cookie --- 用于获取指定的cookie值。

如 ${sessionScope.user} 相当于 jSP中的 <%=session.getAttribute("user")%>

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
</head>
<body>
    ${request.test}
    <%= request.getAttribute("test")%>
</body>
</html>

注意: 如果它要取得值为空,则其不会显示。而JSP会显示null

4.如果直接使用 ${user} 则其会从 page、request、session、Application中依次去取,如果取到了则直接回传,不在继续取下去。

Reference

http://www.cnblogs.com/xushuai123/archive/2013/03/24/2979711.html
http://blog.csdn.net/qwerasdf123/article/details/4189889

原文地址:https://www.cnblogs.com/maying3010/p/6165534.html