step1. 導(dǎo)包(導(dǎo)入要使用的標(biāo)簽的jar文件)。
step2. 使用taglib指令引入要使用的標(biāo)簽。
taglib指令:
uri:標(biāo)簽的命名空間。
prefix:命名空間的別名。
注:
命名空間:是為了區(qū)分同名的元素而添加的前綴。
自定義標(biāo)簽:
step1. 寫一個java類,繼承SimpleTagSupport類。
step2. 在doTag方法里面,編寫處理邏輯。
step3. 描述標(biāo)簽。(.tld文件里面)
注: <body-content>的值可以是
empty 沒有標(biāo)簽體。
scriptless 可以有標(biāo)簽體,但是標(biāo)簽體的內(nèi)容不能夠出現(xiàn)java代碼。
JSP 可以有標(biāo)簽體,標(biāo)簽體的內(nèi)容可以出現(xiàn)java代碼。(只有復(fù)雜標(biāo)簽技術(shù)才支持JSP這個值,簡單標(biāo)簽技術(shù)只支持empty和scriptless)。
簡單日期標(biāo)簽datetag.tld例:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
|
<? xml version = "1.0" encoding = "UTF-8" ?> < taglib 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-jsptaglibrary_2_1.xsd" version = "2.1" > < tlib-version >1.1</ tlib-version > < short-name >d1</ short-name > < uri >http://aliyun.com</ uri > < tag > <!-- name:表示自定義標(biāo)簽 <c1:date名字相同 --> < name >date</ name > < tag-class >tag.DateTag</ tag-class > < body-content >empty</ body-content > < attribute > <!-- name:表示自定義標(biāo)簽 <c1:date datetag名字相同 --> < name >datetag</ name > <!-- true,表示可以使用el表達(dá)式來賦值 --> < required >true</ required > < rtexprvalue >false</ rtexprvalue > </ attribute > </ tag > </ taglib > |
日期java標(biāo)簽類:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
|
package tag; /** * 自定義日期標(biāo)簽 */ import java.io.IOException; import java.text.SimpleDateFormat; import java.util.Date; import javax.servlet.jsp.JspException; import javax.servlet.jsp.JspWriter; import javax.servlet.jsp.PageContext; import javax.servlet.jsp.tagext.SimpleTagSupport; public class DateTag extends SimpleTagSupport { private String datetag; public String getDatetag() { return datetag; } public void setDatetag(String datetag) { this .datetag = datetag; } @Override public void doTag() throws JspException, IOException { PageContext pc = (PageContext) getJspContext(); SimpleDateFormat sdf = new SimpleDateFormat(datetag); String date = sdf.format( new Date()); JspWriter out = pc.getOut(); out.println(date); } } |
以上這篇jstl標(biāo)簽基礎(chǔ)開發(fā)步驟(詳解)就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持服務(wù)器之家。