JavaEE之JSTL

JSTL:比EL更加强大

需要引入2个jar :jstl.jar standard.jar
引入tablib :
<%@ taglib uri=“http://java.sun.com/jsp/jstl/core” prefix=“c” %>
其中prefix=“c” :前缀

核心标签库: 通用标签库、条件标签库 迭代标签库

a.通用标签库

<c:set>赋值

i:

在某个作用域之中(4个范围对象),给某个变量赋值
原来的JSP

JSTL

<%-- 
		request.setAttribute("name", "zhangsan") ;
	--%>
<c:set var="name"    value="zhangsan"   scope="request"/>
${requestScope.name }

格式
<c:set var=“变量名” value=“变量值” scope=“4个范围对象的作用域”/>

ii:

给普通对象赋值
在某个作用域之中(4个范围对象),给某个对象的属性复制 (此种写法,不能指定scope属性)

<c:set target="${requestScope.student}" property="sname"  value="zxs" />

给map对象赋值

<c:set target="${requestScope.countries}" property="cn"  value="中国" />

格式
<c:set target=“对象” property=“对象的属性” value=“赋值” />

注意 <c:set>可以给不存在的变量赋值 (但不能给不存在的对象赋值)

<c:out> :显示
true:<c:out value='<a href="https://www.baidu.com">百度</a>' default="当value为空的,显示的默认值" escapeXml="true" />
false: <c:out value='<a href="https://www.baidu.com">百度</a>' escapeXml="false" />

<c:remove >:删除属性

<c:remove var="a" scope="request"/>

b 条件标签库

选择:

单重选择if(boolean)

格式

<c:if test="" >

多重选择if else if… esle if… else /switch

格式

<c:choose>
	<c:when test="...">   </c:when>
	<c:when test="...">   </c:when>
	<c:when test="...">   </c:when>
	<c:otherwise>   </c:otherwise>
</c:choose>

在使用 test="" 一定要注意后面是否有空格
例如:test=" 10 > 2 " t r u e t e s t = " {10>2 }" true test=" 10>2"truetest="{10>2 } " 非true

c 迭代标签库

循环(迭代标签库)for(int i=0;i<5;i++)
<c:forEach  var="name" items="${requestScope.names }" >
	-${name }-
</c:forEach>
for(String str:names)
<c:forEach  var="student" items="${requestScope.students }" >
	${student.sname }-${student.sno }

</c:forEach>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值