1:Jstl一般要配合El表达式一起使用,来实现在jsp中不出现java代码段。
EL主要用于查找作用域的数据,然后对它们执行简单的操作;它不是编程语言,甚至不是脚本不知语言,通常与jstl标记一起作用,能用简单而又方便的符号来表示复杂的行为;
2:EL表达式的格式:用美元符号$定界,内容在花括号{}中如:${bean.suser}
3:EL表达式由标识符,存取器,文字和运算符组成。
标识符:用来标示存储在作用域中的数据对象。EL有11个保留标识符,对应于11个EL隐式对象除了11个隐式对象外,假定所有其他标识符都用来标示作用域的变量
存取器:用来检索对象的特性或集合的元素。通过”[]”或”.”符号获取相关数据
例如:${userBean,suser}或${userBean[“suser”]} 可以获取bean中suser的属性值
EL运算符:允许对数据和文字进行组合以及比较。
算术运算符:+,-,*,/(或div)和%(或mod)
关系运算符:==(或eq),!=(ne),<(lt),>(gt),<=(le)
逻辑运算符:&&(and), ||(or) !(not)
验证运算符:empty
EL文字
4:jstl jsp标准标签库,是一个不断完善的开源代码的jsp标签库是由apache的jakarta小组来维护的。如果要使用jstl,则必须引用jstl.jar包
Core 的操作作用域变量标签
获取输出作用域中变量
<:out>
例子:<c:out value="${user}" default="这是默认值"></c:out>如果不写scope则默认从小到大作用域开始查找:page,request,session,application
定义作用域中变量
<c:set>
例子:<c:set var="name" value="admin" scope="page"></c:set>
删除作用域中变量:
<c:remove>
例子:<c:remove var="name" scope="page"/>
单分支条件:<c:if> 属性tset[var] [scope]
'admin'单引号 ,requestScope要加上Scope
<c:if test="${requestScope.user.age>18 or requestScope.user.username=='admin'}">
…….
</c:if>
多分支条件:
<c:choose>
<c:when test="">
......
</c:when>
<c:when test="">
......
</c:when>
<c:otherwise>
.....
</c:otherwise>
</c:choose>
输出转换成的URL:<c:url>属性:value [context][var] scope]
<jsp:include>相似用于包含其他页面的内容
<c:import>属性:url [context] [charEncodeing] [var] [scope]
重定向:
<c:redirect>属性:url[context]
可以和<c:url><c:import><c:redirect>配合使用,用于传参
<c:param>属性:name,value
Core的循环控制标签:
格式化标签: