Sun JSTL 常用几个核心库标签

首先导入标签库,这个在jsp文件htnl标签前面使用下面指令就可以了。

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

Uri指向jstl 里面的jar包中的 META-INF中的 c.tld文件中绑定的uriPrefix默认使用和tld文件同名。

 

 

1.

<c:catch>  这个标签通常使用来捕获在jsp中的异常。Catch标签有几个属性。

<name>var</name>

 <required>false</required>

<rtexprvalue>false</rtexprvalue>

其中name属性指定一个标签属性,required指明标签属性是不是必须,rtexprvalue指定是不是可以使用el表达式获取变量值,下面所有标签的这些属性都是一样的功能。

如下面代码所示。

<c:catch var="e">

<%

 int x=1/0;

%>

</c:catch>

${e}

Var定义的指向异常对象。Catch中的执行如果出现异常,就会捕获,上面用一个el表达式输出异常。显示效果如下。

2.

<c:if></c:if> 一个if标签,主要用来根据一些条件来确定是否输出if标签中的标签体。

If标签的属性test

是一个boolean值,<required><rtexprvalue>的值都为true,就是说test属性是必须,并且可以使用el表达式获取。

<c:if test="${b}" scope="page" var="result">

this is true

${result}

</c:if>

上面的简单的写了if标签使用,${b}是使用el表达式获取b的值,其中b是一个boolean值,scope表示var保存域。Var中的值用来保存if结果。值为true 或者false

3. forEach标签 主要来循环执行标签体。可以迭代map或者list还有数组。<c:forEach></c:forEach> 

下面一个简单代码

Items属性用于获取迭代对象,可以使用el表达式获取。 Var表示每次迭代的变量。在下面代码中就是数组中的值。还有一个varStatus,用于记住每次迭代的对象,(这里记住是对象)可以获取迭代的一些参数。

Begin end setp 三个属性结合一起使用。Begin代表开始的位置,end表示结束位置,step表示步长,

<%

int[] nums=new int[]{1,2,3,6,8};

pageContext.setAttribute("nums",nums);

保存一个数组,用于迭代。

%>

<c:forEach items="${nums}" var="num">

${num}

</c:forEach>

<c:forEach begin="1" end="7" step="2">

hello<br>

</c:forEach>

这里结果会输出hello4次,因为步长step2.17每次间隔2.就输出4次。

4.

<c:forToken> 用于使用指定字符分割字符串

Items属性也是用于获取指定分割的字符串,可以使用el表达式获取,

Delims用于设置使用什么字符进行分割,使用var变量来保存分割的字符。

<c:forTokens items="${fortoken}" delims="," var="s">

${s}

</c:forTokens>

 

输出:ddf eed ggee ss

 

5.

<c:import> 标签 一个导入功能的标签,可以把外部资源导入,并保存在一个变量中。

Url指定一个资源路径,可以是绝对和相对。charEncoding指定输出编码,scope指定保存域。Var的值是一个String 就是在域里面保存资源的变量。

Url也可以使用这种格式。

 

6.

<c:redirect>标签比较简单,用来页面重定向 可以和url标签一起使用。

7.

<c:out>标签,用于输出文本,可以是实现转义功能。Value可以使用el表达式获取,

escapeXMl用于表示是不是按照字符原来格式输出,default指定一个缺省值,缺省值表示的是当value=null的时候。

上面代码将输出 <a>这个是一个测试</a> 

 

8.

<c:set>用于设置4大域里面的变量或者属性值,可以是bean或者是map集合的

4种用法,

这个是直接设置保存域中值的变量。

<c:set var="z">

heh

</c:set>

这种情况是没有value的情况下使用标签体设置变量值。

第三种情况,

这里是设置map集合属性的值,taget指定map对象,也可以是一个javabean对象,property代表属性值,如果没有value 可以使用标签体内容来设置,如下

 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值