JSTL是一個很強大的標籤庫,但是在實際項目中,JSTL也有捉襟見肘的時候。這時候就需要我們自定義標籤來實現想要的功能。
這裏就來告訴大家如何自定義一個簡單的JSP標籤的步驟:
一、創建一個無體的自定義標籤。
1、編寫一個繼承SimpleTagSupport的類,實現doTag方法:
2、爲標記創建一個TLD,放在WEB-INF目錄下
3、新建一個JSP,在其中檢測標籤是否可以使用
啓動之後,可以看到頁面輸出Hello Custom Tag!
以上是一個無體的標籤。如果想創建一個有體的標籤。
二、創建有體標籤。
1、把實現doTag方法的代碼改成:getJspBody().invoke(null);
2、把TLD中的<body-content>改爲scriptless。
3、在JSP頁面中可以使用:
<ex:Hello >
how are you
</ex:Hello>
測試發現,此時頁面輸出how are you
三、創建可以使用EL的標籤。
1、實現doTag方法
2、TLD和創建有體標籤保持一致
3、在jsp中使用
<ex:Hello >
Message is ${message}
</ex:Hello>
頁面輸出Hello World
接下來創建一個有屬性的標籤:
四、創建有屬性的標籤:
1、實現doTag方法:
2、修該TLD:
3、在JSP中測試
<ex:Hello message="I love this game">
Message is ${message}
</ex:Hello>
以上就是自定義簡單標籤的幾個小demo,功能更加強大的標籤就搞你們自己了。
如果想了解傳統標籤的內容,可以參考:http://blog.csdn.net/a18716374124/article/details/77478125