jsp:JSTL核心标签库

JSP 标准标签库(JSTL)

JSP标准标签库(JSTL)是一个JSP标签集合,它封装了JSP应用的通用核心功能。

JSTL支持通用的、结构化的任务,比如迭代,条件判断,XML文档操作,国际化标签,SQL标签。 除了这些,它还提供了一个框架来使用集成JSTL的自定义标签。

根据JSTL标签所提供的功能,可以将其分为5个类别。

  • 核心标签
  • 格式化标签
  • SQL标签
  • XML标签
  • JSTL函数

详情查看http://www.runoob.com/jsp/jsp-jstl.html,用的时候再看就行,就是一种工具。

下面是核心标签库测试代码,其他类型就不一一测试了

<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
<%
    String path = request.getContextPath();
    String basePath = request.getScheme() + "://"
            + request.getServerName() + ":" + request.getServerPort()
            + path + "/";
%>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<base href="<%=basePath%>">

<title>My JSP 'testJSTL.jsp' starting page</title>

<meta http-equiv="pragma" content="no-cache">
<meta http-equiv="cache-control" content="no-cache">
<meta http-equiv="expires" content="0">
<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
<meta http-equiv="description" content="This is my page">
<!--
    <link rel="stylesheet" type="text/css" href="styles.css">
    -->

</head>

<body>
    <!-- jstl核心标签库测试 -->
    <div>
        <h1>
            c:out 实例:
            <c:out value="我是out" escapeXml="true" default="我是默认值"></c:out>
        </h1>
        <h1>
            c:out 实例:
            <c:out value="${asdasdfa}" escapeXml="true" default="我是默认值"></c:out>
        </h1>
    </div>

    <div>
        <c:set value="更新" var="text" scope="page"></c:set>
        <c:set value="update" var="action" scope="request"></c:set>

        <h1>c:set 实例:${pageScope.text}</h1>
        <h1>c:set 实例:${requestScope.action}</h1>
    </div>

    <div>
        <c:remove var="text" scope="page"></c:remove>
        <h1>c:remove 实例:${pageScope.text}</h1>
    </div>

    <div>
        <c:catch var="catchException">
            <%
                int i = 1 / 0;
            %>
        </c:catch>
        <c:if test="${catchException!=null }">
            <h1>c:catch 异常名称:${catchException}</h1>
            <h1>c:catch 异常信息:${catchException.message}</h1>
        </c:if>
    </div>

    <div>
        <h1>
            choose when otherwise实例:
            <c:choose>
                <c:when test="${requestScope.action=='update' }">
                    <c:out value="我系when啦~"></c:out>
                </c:when>
                <c:otherwise>
                    <c:out value="我系otherwise啦~"></c:out>
                </c:otherwise>
            </c:choose>
        </h1>
    </div>

    <!-- 相当于jsp:include -->
    <div>
        <c:import var="data" url="testCImport.jsp" />
        <h1>
            <c:out value="${data }"></c:out>
        </h1>
    </div>

    <!-- c:foreach有两种写法对应两种for循环 -->
    <div>
        <h1>
            c:foreach实例:
            <c:forEach var="i" begin="1" end="5" step="2">
            item:<c:out value="${i}"></c:out>
            </c:forEach>
        </h1>
    </div>
    <div>
        <h1>
            c:foreach实例:
            <c:forEach items="${applicationScope.userList }" var="user">
            itemId:<c:out value="${user.id}"></c:out>
            itemName:<c:out value="${user.name}"></c:out>
            </c:forEach>
        </h1>
    </div>

    <div>
        <h1>
            c:forTokens实例:
            <c:forTokens items="com,cn,net" delims="," var="name">
                name:<c:out value="${name }"></c:out>
            </c:forTokens>
        </h1>
    </div>

    <div>
        <h1>
            c:url  c:param实例:
            <c:url var="hrefUrl" value="testEL.jsp">
                <c:param name="username" value="wu"></c:param>
                <c:param name="password" value="123456"></c:param>
            </c:url>
            <a href="${hrefUrl }">链接测试</a>
        </h1>
    </div>
</body>
</html>

总结
如果用熟了,还是挺好用的,但开发不一定用。

猜你喜欢

转载自blog.csdn.net/un_stoppable/article/details/80957647