<c:remove> टैग एक वेरिएबल को या तो निर्दिष्ट स्कोप से या उस पहले स्कोप से हटा देता है जहां वेरिएबल पाया जाता है (यदि कोई स्कोप निर्दिष्ट नहीं है)। यह क्रिया विशेष रूप से उपयोगी नहीं है, लेकिन यह सुनिश्चित करने में सहायता कर सकती है कि एक JSP उन स्कोप्ड संसाधनों को साफ करता है जिनके लिए वह जिम्मेदार है।
एट्रिब्यूट्स
<c:remove> टैग में निम्नलिखित एट्रिब्यूट्स होते हैं:
| एट्रिब्यूट | विवरण | आवश्यक | डिफ़ॉल्ट |
|---|---|---|---|
| var | हटाने के लिए वेरिएबल का नाम | हाँ | कोई नहीं |
| scope | हटाने के लिए वेरिएबल का स्कोप | नहीं | सभी स्कोप्स |
उदाहरण
<%@ taglib uri="https://java.sun.com/jsp/jstl/core" prefix="c" %>
<html>
<head>
<title><c:remove> Tag Example</title>
</head>
<body>
<c:set var="salary" scope="session" value="${2000*2}"/>
<p>Before Remove Value: <c:out value="${salay}"/></p>
<c:remove var="salary"/>
<p>After Remove Value: <c:out value="${salary}"/></p>
</body>
</html>
आउटपुट
Before Remove Value: 4000 After Remove Value:
मुख्य बिंदु
- स्कोप खोज क्रम: यदि scope निर्दिष्ट नहीं है, तो page → request → session → application क्रम में खोजता है और पहली मिलान वाली प्रविष्टि को हटा देता है।
- निर्दिष्ट स्कोप: केवल उस स्कोप में हटाता है (page, request, session, application)।
- कोई त्रुटि नहीं: यदि वेरिएबल मौजूद नहीं है, तो कुछ नहीं करता (कोई अपवाद नहीं)।
- सफाई: अस्थायी गणना परिणामों, फॉर्म डेटा, या संवेदनशील जानकारी को साफ करने के लिए उपयोगी।
उपयोग के मामले
- प्रोसेसिंग के बाद संवेदनशील डेटा (पासवर्ड, टोकन) साफ़ करना।
- पेज/रिक्वेस्ट स्कोप में अस्थायी वेरिएबल्स को साफ़ करके मेमोरी लीक रोकना।
- पुनरावृत्ति/समावेश परिदृश्यों में वेरिएबल पुन: उपयोग के लिए रीसेट करना।
नोट
आधुनिक JSP विकास में, स्क्रिप्टलेट वेरिएबल्स के बजाय EL वेरिएबल्स (<c:set>) का उपयोग करने से <c:remove> की आवश्यकता कम हो जाती है क्योंकि स्कोप स्वचालित रूप से प्रबंधित होते हैं।