自己定義標籤中tagsupport的一些方法

2021-09-08 10:20:56 字數 1326 閱讀 1824

tagsupport生命週期

tagsupport類分別實現了tag與iterationtag介面,其預設的回傳值是:dostarttag()回傳 skip_body、eval_body_include

doafterbodytag()回傳skip_body、eval_body_again

doendtag()回傳eval_page。skip_page

所以在繼承 tagsupport之後,假設沒有改寫不論什麼的方法,則在標籤處理上執行的順序是:

dostarttag() -> 不顯示本體文字 -> doendtag() -> 執行接下來的jsp網頁

假設您改寫了dostarttag(),則您必須指定回傳值,假設指定了eval_body_include,則缺省會照下面的順序執行:

dostarttag() -> 顯示本體文字 -> doafterbodytag()->doendtag()->執行接下來的jsp網頁

簡單的說,假設您繼承了tagsupport並改寫了當中的一些方法,則您必須指定方法合法的回傳值,假設不改寫,則會有其預設的回傳值,

假設您在處理標籤時,引用了一些資源,比如檔案i/o或是資料庫鏈結,則您能夠改寫release()方法,這種方法會在doendtag()之後執行,您能夠在處理完標籤之後用它來釋放先前所使用到的資源。

tagsupport類

tagsupport類實現了tag介面,為我們提供了4個重要的方法。

tagsupport類中的經常用法

方 法 名 稱

描    述

int dostarttag()

遇到自己定義標籤開始時呼叫該方法,

其可選返回值例如以下。

skip_body:表示不用處理標籤體,

直接呼叫doendtag()方法

eval_body_include:正常執行

標籤體,但不正確標籤體做不論什麼處理

int doafterbody()

反覆執行標籤體內容的方法,

其可選返回值例如以下。

skip_body:表示不用處理標

簽體,直接呼叫doendtag()方法

eval_body_again:反覆

執行標籤體內容

方 法 名 稱

描    述

int doendtag()

遇到自己定義標籤結束時呼叫該方法,

其可選返回值例如以下。

skip_page:忽略標籤後面的jsp

內容,中止jsp頁面執行

eval_page:處理標籤後,繼

續處理jsp後面的內容

void release()

釋放獲得的全部資源

android自己定義控制項 自己定義View屬性

1 自己定義view的屬性 2 在view的構造方法中獲得我們自己定義的屬性 3 重寫onmesure 4 重寫ondraw 3這個步驟不是必須,當然了大部分情況下還是須要重寫的。1 自己定義view的屬性,首先在res values 下建立乙個attrs.xml 在裡面定義我們的屬性和宣告我們的整...

自己的c if標籤

一 標籤 標籤處理器 private booleantest public voidsettest booleantest override public voiddotag throwsjspexception,ioexception public voidsetflag booleanflag ...

android中自定義標籤ImageButton

android的imagebutton標籤是沒有text屬性的,那麼我們要在乙個imagebutton裡放置文字時一般有兩種方法 第一種是使用ps將文字放在上,還有一種是自定義標籤。自定義標籤的 如下 import android.content.context import android.gra...