一、EL表达式
EL表达式提供了在JSP中简化表达式的方法,基于可用的命名空间(PageContext属性)、嵌套属性和对集合、操作符(算术型、关系型和逻辑型)的访问符、映射到Java类中静态方法的可扩展函数以及一组隐式对象
EL表达式书写格式
1、${name}
2、${sessionScope.name}
3、${ age > 10}
EL表达式查找顺序
page => request => session => application
EL表达式关系和逻辑运算
1、关系运算 == != > < >= <=
2、逻辑运算 && || !
二、JSTL介绍
JSTL(JavaServer Pages Standard Tag Library,JSP标准标签库)是一个JSP标签集合,它封装了JSP应用的通用核心功能。
JSTL支持通用的、结构化的任务,比如迭代,条件判断,XML文档操作,国际化标签,SQL标签。 除了这些,它还提供了一个框架来使用集成JSTL的自定义标签
可以分为4大类和JSTL函数
核心标签
格式化标签
SQL标签
XML标签
JSTL函数
核心标签库共有14个标签,从功能上分为4类
表达式控制标签:out,set,remove,catch
流程控制标签:if,choose,when,otherwise
循环标签:forEach,forTokens
URL操作标签:import,url,redirect,param
out标签:out标签用来向页面输出值。
有两种格式:①<c:out value="要输出的值" escapeXml="true|false" default="默认值">,这里将会输出value中的值;escapeXml如果为true会将输出的值中的特殊字符转换成对应的转义字符;如果要输出的值为空,则会输出默认值。
②<c:out value="要输出的值" escapeXml="true|false">defalut 默认值</c:out>。作用同上。
set标签:用来向作用域中设置值,保存数据。
格式:①<c:set var="varName" value="设置值" scope="page|request...|application">。var为变量保存时的名;value为要保存的值;scope为作用域的范围。
②<c:set var="varName" scope=".....">body</c:set>和上面一样,不过保存的值为标签内的值。
remove标签:用来删除作用域中的值。
格式<c:remove var="varName" scope="...">
catch标签:用来捕获标签中的异常(就是try-catch)。
格式:<c:catch var="varName">body</c:catch>
catch标签的用法
用来处理产生错误的异常状况,并且将错误信息储存起来
forEach标签的用法
基础迭代标签,接受多种集合类型