一 標籤庫的使用舉例
對於我們自定義標籤,一定要繼承javax.servlet.jsp.tagext.TagSupport類,重寫其doStartTag和doEndTag方法,一般沒有遞歸需要的話,對於其doAfterBodyTag方法不必實現,示例如下:
創建TLD文件,它是一個標準的XML文件,示例如下:
創建JSP頁面,使用標籤庫,如下:
以上就是自定義標籤庫的基本用法。
二 TagSupport工作流程
SKIP_BODY 表示不用處理標籤體,直接調用doEndTag()方法。
SKIP_PAGE 忽略標籤後面的JSP內容。
EVAL_PAGE 處理標籤後,繼續處理JSP後面的內容。
EVAL_BODY_BUFFERED 表示需要處理標籤體。
EVAL_BODY_INCLUDE 表示需要處理標籤體,但繞過setBodyContent()和doInitBody()方法
EVAL_BODY_AGAIN 對標籤體循環處理。
三 常用開源標記庫
JSTL,Jakarta Taglibs,Display Tag