javascript
浅谈JSP自定义标签实现过程
(一) 沒有正文的JSP自定義標簽實現
(1):定義JSP自定義標簽處理類
(2) 定義tld文件
(3) JSP頁面動態引用
注意:動態引用和靜態引用的區別。
為了進行靜態引用,首先必須將下面的項加入到web.xml 文件中:
然后,將JSP 聲明加入到所有需要使用自定義標記庫的頁面中:
指定的uri 屬性與在web.xml 文件中指定的taglib-uri 值相匹配。
在進行標記庫的靜態引用時,JSP 聲明必須查詢 web.xml 文件以執行庫查詢。這意味著如果移動或者重命名了庫,或者希望在 web.xml 文件中加入更多的庫,就必須停止服務器、更新 web.xml 文件、然后重新啟動服務器。動態方法讓JSP頁直接指向 TLD 位置,因而是在解釋JSP頁面時進行處理。
(二)? 沒有正文的但帶有屬性的JSP自定義標簽標簽實現
(1):定義JSP自定義標簽處理類
(2) 定義tld文件
(3)JSP頁面動態引用
(三) 有正文的且帶有屬性的JSP自定義標簽實現
(1):定義JSP自定義標簽處理類
(2) 定義tld文件
(3) jsp 頁面動態引用
效果圖:
執行順序
doStartTag()->setBodyContent()->doInitBody()->doAfterTag()->doEndTag()
如果doStartTag()返回的是EVAL_BODY_INCLUDE執行doAfterTag()方法,
如果它返回SKIP_BODY就執行doEndTag()方法。
setBodyContent()方法用于設置標簽體內容,如果在計算BodyContent時需要進行一些初始化工作,
則在doInitBody()方法中完成。標簽體內容執行完后,會調用doAfterBody()方法
在doAfterTag()方法中返回EVAL_BODY_AGAIN來重復執行doAfterTag()方法
返回SKIP_BODY值則執行doEndTag()方法。
在doEndTag()方法中返回EVAL_PAGE值,則執行此標簽的后的其它代碼,
返回SKIP_PAGE則不執行此頁面的其它代碼。
總結
以上是生活随笔為你收集整理的浅谈JSP自定义标签实现过程的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 又有一本图书在台湾出版了
- 下一篇: SQL中的CASE使用方法