
El:
1.el表达式语言(是什么)
2.el是书写到jsp页面
3.el语法格式${ }
4.el算数运算(+,-,*,/,%),
逻辑运算(&&,||,!),
关系运算(>,<,>=,<=,==,!=)
${empty object }判断是否为空,判断非空${!empty object}或${not empty object}
5.El表达式和范围有关的内置对象:pageScope,requestScope,sessionScope,applicationScope
Java的范围有关内置对象:pageContext,request,session,application
6.el和参数有关的内置对象为:param,paramValues
param.name对应的java代码为request.getParameter(String name);
paramValues.name对应的java代码为request.getParameterValues(String name)
7.el和请求相关的内置对象(客户端部分)
获取客户端的浏览器版本信息的内置对象为header à${header[‘User-Agent’]}
获取客户端的ip地址:remoteAddrà${pageContext.request.remoteAddr}
获取客户端的端口:remotePort:à${pageContext.request.remotePort}
获取客户端请求的参数字符串:queryStringà请求的?后面的参数部分:
比如http://127.0.0.1:9999/test62/index6-2.jsp?username=zs&password=123,获取
的是?后面的username=zs&password=123
客户端请求的资源的完整的url地址:requestURLà${pageContext.request. requestURL }比如:http://127.0.0.1:9999/test62/index6-2.jsp
客户端请求的上下文:contextPathà${pageContext.request. contextPath }:比如/test62
获取客户端请求所有的方法:methodà${ pageContext.request. method }比如post或get方法
获取客户端请求时使用的协议:
protocolà ${ pageContext.request. protocol }:比如http 1.1
schemeà${ pageContext.request. scheme }:比如http
8.el和请求相关的内置对象(服务器部分)
获取服务器的ip地址:serverNameà${ pageContext.request. serverName }比如127.0.0.1
获取服务器的端口:serverPortà${ pageContext.request. serverPort }比如9999
案例:替代页面的Java写的base àhttp://127.0.0.1:9999/test62
${ pageContext.request. scheme }://${ pageContext.request. serverName }:${ pageContext.request. serverPort }/${pageContext.request. contextPath }
获取web.xml配置的context信息的initParamà${initParam.contextPath }结果为:/test62
<context-param>
<param-name>contextPath</param-name>
<param-value>/test62</param-value>
</context-param>
9.自定义标签使用函数
禁用 el表达式的三种方式为:
a.\${}—>禁用当前的el表达式
b.<% page isElIgnore=true%>à禁用的是当前的页的el表达式
c.web.xml配置:
<!-- 所有的jsp页面都不能使用el表达式 -->
<jsp-config>
<jsp-property-group>
<url-pattern>*.jsp</url-pattern>
<el-ignored>true</el-ignored>
</jsp-property-group>
</jsp-config>