关闭在jsp页面中如果嵌入大量的java脚本:需要导包、类型需要强转,看着一大串式子非常乱。有什么办法代替呢?于是为了方便开发,出现了EL表达式。
el表达式语法
EL表达式语法;以"${“开始,以”}“结束标识符:
不能以数字开头,不可以是EL表达式的保留字,不能是EL的隐式对象,不可以包含双引号,单引号,减号,正斜线等特殊字符[]运算符和 .运算符.运算符用于访问对象的属性,如{People.username} []运算符用于功能与.运算符一样,但是如果包含特殊字符,就只能用[]访问。如People.username[]运算符用于功能与.运算符一样,但是如果包含特殊字符,就只能用[]访问。如{user.[“my-username”]}
算数运算符+,-,*,/,%
比较运算符==,!=,>,<,<=,>=操作数可以是常量,变量,EL
表达式逻辑运算符&&,||,!$
{empty var}判断变量是否为空,若为空,返回true,否则返回为false。
${not empty var}判断变量是否非空,若不为空,返回true,否则返回false。如果变量不存在,返回true,如果值为null,如果List集合对象中没有任何元素,返回为trueEL隐式对象除了第一个保存在pageContext对象中,其余的都保存在Map对象中。
pageContext
pageScope
requestScope
sessionScope
appliction
Scope
param:获取请求参数,保存了所有的请求参数在Map对象中
paramValuesheader:保存所有http请求头字段的Map对象中
headerValues:保存所有http请求参数的Map对象,返回String型数组
cookieinit
Param:保存了web域所有初始化参数的Map对象
前面的隐式对象可以省略,则默认查找为page 、request、session、applicationparam对象,当参数不存在时,返回一个空字符串。与request.getParameter()方法相同。。当有多个返回值时,获取参数的第一个值为${paramValues.num[0]}
Core
Core库是jsp核心库 需要starand.jar和jstl.jar这两个包用taglib引入htttp://java.sun.com/jsp/jstl/core
<c:outvalue=“值”[default=“defaultValue”[escapeXml=“true|false”]/>
<c:if test=”"></c:if> if
<c:choose>if-else-if<c:when test=“条件” >
满足test的条件的执行内容
</c:when><c:otherwise>其他条件都不满足时执行<c:otherwise>
</c:choose>
<c:forEach 参数:items="" var="" begin end step varStatus>
</c:forEach>
varStatus.index表示索引,从0开始varStatus.count表示计数,从1开始<c:redict uri=“value”>重定向除了jstl的Core库外,还有XML,Functions,SQL,|18N
EL表达式和JSTL
最新推荐文章于 2022-03-27 18:57:37 发布