zoukankan      html  css  js  c++  java
  • 10、jstl标签库

    一、JSTL是SUN公司制定的一个JSP标签库,由apache jakarta组织负责维护的开源项目,目的是用标签代替java代码片段。JSTL 1.0 由四个定制标记库(core、format、xml 和 sql)和一对通用标记库验证器(ScriptFreeTLV 和 PermittedTaglibsTLV)组成。

      1)、core: 标记库提供了定制操作,通过限制了作用域的变量管理数据,以及执行页面内容的迭代和条件操作。它还提供了用来生成和操作 URL 的标记。

      2)、format: 标记库定义了用来格式化数据(尤其是数字和日期)的操作。它还支持使用本地化资源束进行 JSP 页面的国际化。

      3)、xml: 库包含一些标记,这些标记用来操作通过 XML 表示的数据,

       4)、sql :库定义了用来查询关系数据库的操作。

    二:Core:又被称为核心标签库(就是通常说的c标签),该标签库的工作是对于 JSP 页面一般处理的封装。包含以下标签 
      多用途核心标签:<c:out> 、<c:set> 、<c:remove> 、<c:catch> 。 
      条件控制标签:<c:if> 、<c:choose> 、<c:when> 、<c:otherwise> 。 
      循环控制标签:<c:forEach> 、<c:forTokens> 。 
      URL 相关标签:<c:import> 、<c:url> 、<c:redirect> 、<c:param> 。

    三、Core标签的引入:myeclipse集成了jstl,所以只需要在jsp页面头部将标签库引入就可以使用jstl的core标签库

      a)、在Jsp页面引入jstl标签库(prefix的名字课题任意的取,但一般都取为c):

    1 <%@ taglib prefix="c" uri=""  %>

      b)、查询uri的值:在Java EE 6 Libraries/jstl-impl.jar/META-INF/c.tld文件中找到uri的值:

      c)、上图中的uri的值复制到taglib标签中的uri中即可使用c标签库了:

     1 <%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
     2 <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"  %>
     3 <%
     4 String path = request.getContextPath();
     5 String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
     6 %>
     7 
     8 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
     9 <html>
    10   <head>
    11   </head>
    12   <body>
    13        The book name is ${bookName} ;<br>
    14        <!-- el表达式执行基本的逻辑运算 -->
    15         ${1+2 }<br/>
    16         ${5 < 7 }<br/>
    17         ${5<7 && 4 >6 }<br/>
    18         ${5<7 || 4 >6 }<br/>
    19         <!-- 获取数组 -->
    20         ${arr[0] }<br/>
    21         ${arr[1] }<br/>
    22         ${arr[2] }<br/>
    23         ${arr[3] }<br/>
    24         ${arr[5] }<br/>
    25         ${list[0]}<br>  <!-- list集合可以用下标读出来 -->
    26         <!-- 获取数组 -->
    27         ${list[1]}<br>
    28         ${list[2]}<br>
    29         ${list[3]}<br>
    30         ${list[4]}<br>
    31         ${list[5]}<br>
    32         <!-- 获取Map -->
    33         ${map["key1"] } == ${map.key1 }<br/>
    34         ${map.key2 }<br/>
    35         C 标签的 forEach 用法 类似于增强for循环 <br/>
    36         <c:forEach var="list" items="${list}">
    37              ${list}<br/>
    38         </c:forEach>
    39         <c:forEach var="v" items="${map }">
    40             <!-- 遍历Map时,通过key获取对应的键,通过value获取对应的值 -->
    41             ${v.key }====${v.value }<br/>
    42         </c:forEach>
    43         <c:if test="${bookName == 'chenzejun' }">
    44               The book name is ${bookName} ;<br>
    45          </c:if>
    46          <c:out value="${bookName}" /><br>
    47          <!-- 
    48          c:set相当于设置一个变量,但只在本页面有效
    49           -->
    50          <c:set var="temp" value="jsk"  />
    51          ${temp} <br>
    52   </body>
    53 </html>
    View Code
  • 相关阅读:
    单点登录
    公共的service接口
    springMvc入门--初识springMvc
    mybatis进阶--mapper输入映射和输出映射
    mybatis入门--mapper代理方式开发
    AJAX学习笔记——跨域
    AJAX学习笔记——jQuery中的AJAX
    AJAX学习笔记——JSON
    XAMPP启动Apache服务时启动失败
    Ajax的简单例子——PHP
  • 原文地址:https://www.cnblogs.com/czj-zhm/p/6498233.html
Copyright © 2011-2022 走看看