Tag文件,幾乎和JSP文件一模一樣,可以被JSP頁面動態加載調用。Tag文件有什么優勢呢(既然和JSP幾乎一模一樣,那就得想想這個必然有不一樣的地方,不然要它存在干嘛)
- 在設計Web應用時,可以通過編寫Tag文件實現代碼復用。
- 可將JSP頁面中的關於數據處理的代碼放在一個Tag文件中,讓JSP頁面只負責顯示數據。即通過使用Tag文件將數據的處理和顯示相分離,方便web項目的維護
開始嘗試創建應用tag文件
1.在WEB服務目錄下創建如下目錄結構
Web服務目錄\WEB-INF\tags,
沒錯,就是你想的那樣,在WEB-INF下建一個tags文件夾,把tags文件放在那里
tags文件下一般來說會建一些tag庫,lib1,lib2,lib3.....(這種標號式的命名方式可別學)
Web服務目錄\WEB-INF\tags\lib1
2.創建tag文件
其實和jsp差不多,模仿一下下面
<%@tag pageEncoding="GB2312" %> <p>這是一個Tag文件,負責計算1~100內的奇數之和</p> <%int sum=0, i=1; for (i=1;i<=100;i++) { sum=sum+i; } out.println(sum);%>
大致會是如圖所示
2.引入tag文件
<%@ taglib tagdir="自定義標記庫的位置" prefix="前綴" %>
在jsp文件頂部寫這樣的標簽,如本文例子就寫為
<%@ taglib tagdir="/WEB-INF/tags/lib1" prefix="beijing" %>
在jsp中調用標簽
<beijing:AddSum/>
就可以調用目錄下lib1庫中的AddSum.tag了。
這里,一開始學我也有點蒙,前綴是啥用,書上寫了
通過前綴可以有效地區分不同標記庫中具有相同名字的標記文件
這樣有些明白了吧,就是給標記庫取一個別名,以防各種庫的tag混在一起,同名tag會有歧義