JSP基本_JSTL


自定義標簽是,用戶定義自己的處理的tag的機制。
JSTL是,JSP用標准自定義標簽。從JSTL Ver.1.2開始成為JavaEE5的子集。比較有名的是Glassfish。Tomcat上開發的話,需要自己配置JSTL。
 
1、JSTL的提供形式
   自定義標簽通常有下述兩部分內容:
    - Tag類文件
    - TLD (tag library descriptor)
 
2、JSTL的使用步驟
   自定義標簽的jar文件下載(地址:https://jstl.java.net/)后,按如下順序使用:
    1)把JAR文件放到項目的lib里
    2)做成只包含web-app要素的web.xml文件,以防止命令行上的錯誤輸出。
       例:
        <web-app xmlns="http://java.sun.com/xml/ns/javaee"
            xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
           xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
           version="2.5">
 
        </web-app>
3)jsp文件里定義taglib。
   例:<%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
   這里,
     - prefix屬性:JSP里使用JSTL時的前綴。習慣上用“c”。
     - uri屬性:識別JSTL的字符串。按照JSTL說明文檔指定。
 
    4)使用taglib
       例:<c:out value="你好!"/>
 
   注意JSTL和Servlet/JSP的版本對應
    - JSTL 1.2  ⇒  JSP 2.1  (Tomcat6)
    - JSTL 1.1  ⇒  JSP 2.0  (Tomcat5)
    - JSTL 1.0  ⇒  JSP 1.2  (Tomcat4)
 
3、JSTL種類

1)JSTL種類

種類 說明 uri 前綴
core 循環處理、條件分支、變量的取得/設定等基本tag http://java.sun.com/jsp/jstl/core c
il8n 數值、日期的格式,國際化對應 http://java.sun.com/jsp/jstl/fmt fmt
xml XML文檔的解析,XSL格式變換 http://java.sun.com/jsp/jstl/xml x
function 字符串、集合操作 http://java.sun.com/jsp/jstl/functions fn
SQL SQL的執行等DB操作 http://java.sun.com/jsp/jstl/sql sql

2)core tag

 

 功能 tag 說明
 變量  <c:set> 設置變量  
<c:remove> 刪除變量
 流程控制    <c:if> 單一條件分支
<c:choose>
<c:when>
<c:otherwise>
復數條件分支
<c:forEach> loop
<c:forTokens> 字符串查找
 URL管理   <c:import> 文件import
<c:redirect> redirect
<c:url> URL生成。
其它   <c:out> 輸出
<c:catch> 異常處理
<c:param> 參數指定

        (1) <c:set> tag

屬性 必須 說明
var × 變量名。var和target指定任意一個。
target × 變量名。和proparty屬性一起使用。使用javaBeans、Map的時候需要指定。
var和target指定任意一個。
property × 和target一起使用。指定javaBeans的屬性名,或Map的key。
value ×
scope × 變量的有效范圍「page、request、session、application」。
默認為page。

         (2) <c:remove> tag   

 

屬性 必須 說明
var 變量名。
scope × 變量范圍

          (3) <c:if> tag     

屬性 必須 說明
test 條件
var × 保存結果(true/false)的變量名。
scope × 變量范圍「page、request、session、application」。
默認是page

 

 剩下有空時再追加。。。。

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM