1、EL是JSP内置的表达式语言
jsp2.0开始,不再让使用java脚本,而 是使用el表达式和动态标签来替代java脚本
EL替代的是<%=....%>,也就是说,EL只能做输出
2、EL来读取四大域
${xxx},全域查找名为xxx的属性,如果不存在,输出空字符串,而不是null
${pageScope.xxx}、${requestScope.xxx}、${sessionScope.xxx}、${applicationScope.xxx} 指定域获取属性
3、EL可以输出的东西都在11个内置对象中 11个内置对象,其中10个是map pageContext不是map
pageScope、requestScope、sessionScope、applicationScope
param:对应参数,他是一个Map,其中key是参数名,value是参数值,适用于多值的参数
${param.参数名}
paramValues:对应参数,他是一个Map,其中国key是参数名,value是多个参数值,适用于多值的参数
${params.参数名[0]} ${params.参数名[1]} 因为value是数组,所以显示的时候要加数组下标
header:对应请求头,他是一个Map,其中key表示头名称,value是单个头 值,适用于单值请求头
headerValues:适用于多值请求头
initParam:获取<context-param>内的参数 (在web.xml文件中)
cookie:Map<String,Cookie> 其中key是cookie的name,value是cookie对象
${cookie.username.value}
pageContext:PageContext类型,1个顶9个 ${pageContext.request.method} ${pageContext.request.contextPath} 获取项目名
EL函数库(由JSTL提供)需要导入标签库
<%@ taglib prefix="fn" uri=" "%>