您的位置:首页 > Web前端 > JavaScript

JSTL常用标签库

2016-08-15 13:02 357 查看




1)<c:out>

        <c:out>标签用于输出一段文本内容到pageContext对象当前保存的"out"对象中,即:将内容输出给浏览器。该标签有三个属性可选,value属性指定要输出的内容;escapeXml指定是否将<、>、&、`等特殊字符进行html编码转换后再进行输出,默认为true;default属性指定如果value属性的值为null时所输出的默认值。该标签主要用于escapeXml属性和default属性


2)<c:set>

        <c:set>标签用于把某一个对象存在指定的域范围内,或者设置web域中的java.util.Map类型的属性对象或javaBean类型的属性对象的属性。有如下属性:

        value:用于指定属性的值;

        scope:用于指定属性所在的web域;

        var:用于指定要设置的web域属性的名称;

        target:用于指定要设置属性的对象,这个对象必须是javaBean对象或者java.util.Map对象;

        property:用于指定当前为对象设置的属性名称。

[html] view
plain copy

 





<!-- c:set标签 :向web域中存数据,向map或Bean中存数据-->  

<c:set var="data" value="xxx" scope="page"/>  

${pageScope.data }  

  

<%   

    Map map = new HashMap();  

    request.setAttribute("map", map);  

%>  

<c:set property="data" value="yyy" target="${map }" />  

${map.data }  

  

<c:set property="name" value="eson_15" target="${person }"/>  

${person.name }  


3) <c:remove>

        <c:remove>标签用于删除各种web域中的属性:

[html] view
plain copy

 





<c:remove var="varName" [scope="{page|request|session|application}"]/>  


4)<c:if>

        <c:if>标签可以判断是否执行标签体

[html] view
plain copy

 





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

    xxx  

</c:if>  

        如果test中的表达式为真则执行标签体,另外将test的值保存在page域中,保存参数为result,可以通过${result}获取保存的值。


5)<c:choose>

        标签用于构造条件判断语句

[html] view
plain copy

 





<c:choose>  

    <c:when test="${count == 0}">  

        对不起,没有符合您要求的记录  

    </c:when>  

    <c:otherwise>  

        符合您要求的记录共有${count}条  

    </c:otherwise>  

</c:choose>  


6)<c:forEach>

        <c:forEach>标签用于对一个集合对象中的元素进行循环迭代操作,或者按指定的次数重复迭代执行标签体中的内容。它有如下属性:

        var属性:指定当前迭代到的元素保存到page域中的属性名称;

        items属性:将要迭代的集合对象;

        begin属性:如果指定items属性,就从集合中的第begin个元素开始迭代,begin的索引值从0开始编号;如果没有指定items属性,就从begin指定的值开始迭代,直到end值结束。

        step属性:指定迭代的步长。

[html] view
plain copy

 





<!-- c:forEach标签 -->  

<c:forEach var="num" begin="1" end="10" step="1">   

${num }  <!-- 输出1-10 -->  

</c:forEach> <br>  

  

<%   

    List list = Arrays.asList("1","2");  

    request.setAttribute("list", list);  

%>  

<c:forEach var="index" begin="0" end="${fn.length(list) }">  

${list[index] }  

</c:forEach>  

  

<c:forEach var="index" items="${list}">  

${index}  

</c:forEach>  


7)<c:param>标签

        在JSP页面进行url的相关操作时,经常用在url地址后面附加一些参数。<c:param>标签可以嵌套在<c:import>、<c:url>或<c:redirect>标签内,为这些标签所使用的url地址附加参数。<c:param>标签在为一个url地址附加参数时,将自动对参数值进行url编码,例如,如果传递的参数为“中国”,则将其转换为"%d6%d0%b9%fa"后再附加到url地址后面,这也就是使用<c:param>标签的最大好处。如:<c:param
name="name" value="value"/>

        <c:url>标签用于在JSP页面中构造一个url地址,其主要目的是实现url重写。url重写就是将会话标识号以参数形式附加在url地址后面(关于url重写,在总结session技术的时候有写到)。它有如下属性:

        value属性:指定要构造的url;

        var属性:指定将构造出的url结果保存到web域中的属性名称

        scope属性:指定将构造出的url结果保存到那个web域中

[html] view
plain copy

 





<!-- c:url标签(重点) -->  

<a href="<c:url value="/servlet/servletDemo1"/>">点点</a>  

  

<c:url value="/servlet/servletDemo2" var="servletdemo2"><!-- 如果没有var,则会把地址直接打给浏览器 -->  

    <c:param name="name" value="中国"/> <!-- 中国两个字已经被url编码了 -->  

    <c:param name="password" value="我是一个"></c:param>  

</c:url>  

<a href="${servletdemo2}">点点</a>  

        <c:redirect>标签用于实现请求重定向。

        url属性:指定要转发或重定向到的目标资源的url地址;

       context:当要使用相对路径重定向到同一个服务器下的其他web应用程序中的资源时,context属性指定其他web应用程序的名称。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: