एक कस्टम टैग एक उपयोगकर्ता द्वारा परिभाषित JSP भाषा तत्व है। जब एक कस्टम टैग वाले JSP पृष्ठ को सर्वलेट में अनुवादित किया जाता है, तो टैग को टैग हैंडलर नामक ऑब्जेक्ट पर संचालन में बदल दिया जाता है। JSP पेज के सर्वलेट के निष्पादित होने पर वेब कंटेनर उन ऑपरेशनों को इनवॉइस करता है।
JSP टैग एक्सटेंशन से आप नए टैग बना सकते हैं जिन्हें आप सीधे JavaServer पेज में सम्मिलित कर सकते हैं। JSP 2.0 विनिर्देशन ने इन कस्टम टैग को लिखने के लिए सरल टैग हैंडलर पेश किए।
कस्टम टैग लिखने के लिए, आप बस SimpleTagSupport . का विस्तार कर सकते हैं क्लास और ओवरराइड करें doTag() विधि, जहां आप टैग के लिए सामग्री उत्पन्न करने के लिए अपना कोड डाल सकते हैं।
"Hello" टैग बनाएं
विचार करें कि आप
एक कस्टम JSP टैग बनाने के लिए, आपको पहले एक जावा क्लास बनानी होगी जो टैग हैंडलर के रूप में कार्य करे। आइए अब HelloTag . बनाएं वर्ग इस प्रकार है -
पैकेज com.tutorialspoint;import javax.servlet.jsp.tagext.*;import javax.servlet.jsp.*;import java.io.*;सार्वजनिक वर्ग हैलोटैग SimpleTagSupport बढ़ाता है { public void doTag() JspException, IOException को फेंकता है {JspWriter आउट =getJspContext ()। getOut (); out.println ("हैलो कस्टम टैग!"); }}पूर्व>उपरोक्त कोड में सरल कोडिंग है जहां doTag() विधि getJspContext() . का उपयोग करके वर्तमान JspContext ऑब्जेक्ट लेती है विधि और इसका उपयोग "हैलो कस्टम टैग!" send भेजने के लिए करती है वर्तमान JspWriter . के लिए वस्तु
आइए हम उपरोक्त वर्ग को संकलित करें और इसे पर्यावरण चर CLASSPATH में उपलब्ध निर्देशिका में कॉपी करें। अंत में, निम्न टैग लाइब्रेरी फ़ाइल बनाएं:
webapps\ROOT\WEB-INF\custom.tld ।1.0 2.0 <लघु-नाम>उदाहरण TLDलघु-नाम> <टैग> <नाम>नमस्कारcom.tutorialspoint.HelloTag रिक्त आइए अब ऊपर परिभाषित कस्टम टैग नमस्ते . का उपयोग करें हमारे जेएसपी कार्यक्रम में इस प्रकार है -
<%@ taglib prefix ="ex" uri ="WEB-INF/custom.tld"%>एक नमूना कस्टम टैग <उदा:नमस्कार/>उपरोक्त JSP को कॉल करें और यह निम्नलिखित परिणाम देगा -
नमस्ते कस्टम टैग!