Scriptlet Element in JSP

Scriptlet Element in JSP – Scriptlet Element सबसे सरल तरीके का JSP Element होता है, जो कि वास्तव में केवल Java Codes का एक Section मात्र होता है और Opening व Closing JSP Codes के बीच Encapsulated रहता है। इस बात को ध्‍यान रखना जरूरी है कि Individual Scriptlet एक से ज्यादा Pages के बीच Available नहीं होता और एक ही Page पर Exist सभी Scriptlets का एक Valid Block of Java Codes के रूप में होना भी जरूरी होता है।

Scriptlets, Page पर Output Generate कर सकते हैं, लेकिन जरूरी नहीं है कि वे हमेंशा Output Generate करें। हालांकि यदि Scriptlet कोई Output Generate करता है, तो उस Output को सामान्यत: Implicit out Object के माध्‍यम से Generate किया जाता है। इसे समझने के लिए हम निम्नानुसार एक JSP Page Create कर सकते हैं-

FileName: ScriptletElement.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"% >
<!DOCTYPE html>
<html>
 <head>
  <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
  <title>Home Page</title>
 </head>
<body>
		
 <h1>Current Date and Time is: 
  <% out.println(new java.util.Date()); %>
 </h1>

</body>
</html>

जब हम इस Webpage को Run करते है, तब हमें निम्नानुसार Output प्राप्त होता है-

Scriptlet Element in JSP - Core JSP in Hindi

उपरोक्त JSP Page एक बहुत ही Simple Dynamic JSP Page है, जिसमें Scriptlet को Utilize किया गया है, जहां Opening JSP Tag (<%) से Java Codes की शुरूआत होती है, जबकि Closing JSP Tag (%>) से Java Codes का अन्त होता है और जैसाकि हम इस Page के Code में देख सकते हैं कि जब निम्न Code Execute होता है, तो out Object Current Webpage को Represent करता है-

out.println(new java.util.Date());

इसलिए जब हम out Object के साथ println() Method को Use करते हैं, तो इसके बीच Specified String अथवा Use किए गए Code द्वारा Return होने वाली String को Webpage पर Text की तरह Render कर दिया जाता है।

अत: जब उपरोक्त Statement Execute होता है तो java.util.Date() Constructor के माध्‍यम से एक नया Date Type का Object Create होता है, जो कि Current Date and Time को एक String Value के रूप में Return करता है और इस String Value को out.println() Method द्वारा Webpage पर Render कर दिया जाता है।

यहां ध्‍यान देने वाली एक बात ये भी है कि हमें Output के रूप में जो Date दिखाई देता है, वह Date Current Computer का नहीं बल्कि उस Server Computer का है, जिस पर हमारा Web Server Installed है।

print()println() दोनों ही Methods समान काम करते हैं। इसलिए जब किसी Data को Webpage पर Render करना होता है, तो ये दोनों ही Methods JspWriter पर समान तरीके से Execute होते हैं। यानी ये दोनों ही Methods Input के रूप में एक Object Accept करते हैं और उस Object को Output Stream पर Send करते हैं। जबकि यदि जरूरी होता है, तो उस Object को String Format में Convert करने का काम भी इन Methods द्वारा स्वयं ही कर लिया जाता है।

चूंकि Scriptlet Element को भी हम हमारे JSP Page में निम्नानुसार दो तरीकों से Use कर सकते हैं-

JSP Syntax:           <% code %>
XML Syntax:        <jsp:scriptlet > code </jsp:scriptlet>

इसलिए यदि हम हमारे पिछले Example Page पर Specified JSP Syntax को ही XML Syntax का प्रयोग करते हुए Specify करना चाहें, तो निम्नानुसार कर सकते हैं-

<h1>Current Date and Time is:
        <jsp:scriptlet> out.println(new java.util.Date()); 
</jsp:scriptlet></h1>