JSTL

JSTL

目前常用的版本是JSTL1.1,包含5个tld文件

c.tld:c.tld称为核心标记库,包含一些Web应用常用标记,如循环、分支、表达式赋值和基本输入输出等,是最常使用的标记库。

fmt.tld:fmt.tld称为格式化/国际化标记库,包括用来解析数据的标记,如日期等。

sql.tld:sql.tld称为数据库标记库,包含访问数据库的标记。

x.tld:x.tld称为XML标记库,包含被用来访问XML元素的标记。

fn.tld:fn.tld称为函数标记库,包含了一些常用的函数,可以直接调用,例如,截取字符串等。

注意:JSTL在用时,必须有JSTL的jar 包
JSTL位置: jstl-1.2.jar/META-INF/c.tld

       JSP使用JSTL时要引包:
       <%@ taglib   prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>

注意:引包uri去c.tld里面的12行去找http://java.sun.com/jsp/jstl/core
注意:如果没有看到JSTL标签运行出来的内容,那么就往Tomcat中的lib包里复制jstl-1.2.jar包, 重启Tomcat,在试

常用标签库
C标签库中有:
<c:forEach> <c:forTokens> <c:if> <c:choose>

<%@ taglib prefix=“c”
uri=“http://java.sun.com/jsp/jstl/core”%>

fmt标签库中有:
fmt:formatDate

<%@ taglib prefix=“fmt”
uri=“http://java.sun.com/jsp/jstl/fmt”%>

取值遍历集合结果
for

<c:forEach items="${requestScope.list } var="t">
	${t.name}
	</c:forEach>

注意: User类中的所有属性都要开头字母小写,如果开头字母大写,那么就会在forEach时,报错,报从User类中找不到这个属性

if

<c:if test="${t.pwd == 22 }">
	hello word !!
	</c:if>

这里没有else,只能无限if

迭代分隔符的

</c:if>
	<c:forTokens items="${reuestScope.t.call }" delims="-" var="s">
	${s }
	</c:forTokens>

fmt格式时间

<fmt:formatDate value="${date}" type="both"/>  
输出格式: 2010-5-31 23:59:59  
  
<fmt:formatDate value="${date}" type="date"/>  
输出格式: 2010-4-1  
  
<fmt:formatDate value="${date}" type="time"/>  
输出格式: 23:59:59 

<c:choose>、 <c:when>、 <c:otherwise>实现if/else if/else逻辑

<c:choose>
	<!-- if -->
	<c:when test="${10>2 }">
	hello
	</c:when>
	<!-- if -->
	<c:when test="${10>15 }">
	hello World
	</c:when>
	
	 <!-- else -->
	
	<c:otherwise>
	hhhh
	</c:otherwise>
	</c:choose>

JSTL通常与EL连用,这样方便简单,也更加高效

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值