EL表达式

EL中的基础操作符

EL表达式支持大部分Java所提供的算术和逻辑操作符:

操作符描述
. 访问一个Bean属性或者一个映射条目
[] 访问一个数组或者链表的元素
( ) 组织一个子表达式以改变优先级
+
- 减或负
*
/ or div
% or mod 取模
== or eq 测试是否相等
!= or ne 测试是否不等
< or lt 测试是否小于
> or gt 测试是否大于
<= or le 测试是否小于等于
>= or ge 测试是否大于等于
&& or and 测试逻辑与
|| or or 测试逻辑或
! or not 测试取反
empty 测试是否空值

JSP EL隐含对象

pageContext对象

通过pageContext获取servletContext,request,response,session等对象

格式

${pageContext.request.queryString}

param和paramValues对象

param和paramValues对象用来访问参数值,通过使用request.getParameter方法和request.getParameterValues方法

${param.order},或者${param["order"]}。

header和headerValues对象

header和headerValues对象用来访问信息头,通过使用 request.getHeader方法和request.getHeaders方法

${header.user-agent},或者${header["user-agent"]}。

获取隐式作用域对象中保存的属性

${user.name}按照pageScope,requestScope,sessionScope,applicationScope的顺序查找

JSP EL中的函数

定义函数

  定义一个类,创建静态方法(函数)

  在WEB-INF/tlds下创建tld文件

  引用并调用

  

${ns:func(param1, param2, ...)}

ns指的是命名空间(namespace),func指的是函数的名称,param1指的是第一个参数,param2指的是第二个参数,以此类推

<taglib>
   <tlib-version>1.0</tlib-version>
   <jsp-version>1.2</jsp-version>
   <uri>http://com.tanlei.functions/myfun</uri>
   <function>
      <name>hi</name>
      <function-class>com.tanlei.fun.myfun</function-class>
      <function-signature>
        java.lang.String hi(java.lang.String)
      </function-signature>
   </function>
</taglib>
<%@ taglib perfix="fun" uri="http://com.tanlei.functions/myfun" %>
${fun:hi("Get my length")}
原文地址:https://www.cnblogs.com/tanlei-sxs/p/10073815.html