मैं जेएसपी ईएल के लिए नया हूँ। मैं कुछ ईएल पाठ पढ़ रहा हूं और मुझे निम्नलिखित कोड मिला है:
<body>
<h1>Hello World!</h1>
<%
String s1 = "aaa ";
String s2 = "22";
Double dObj = new Double(3.5);
int a;
a = 12;
%>
s1 + s2 = ${ s1 + s2 } <br>
a + 2 = ${a + 2} <br>
dObj + 2 = ${dObj + 2} <br>
2 + 2 = ${"2" + 2}
</body>
और परिणाम:
s1 + s2 = 0 (1)
a + 2 = 2 (2)
dObj + 2 = 2 (3)
2 + 2 = 4 (4)
मैं (4) के परिणाम को समझ सकता हूं लेकिन (1), (2), और (3) के परिणामों के बारे में मेरे पास कोई विचार नहीं है। क्या कोई इसके बारे में विस्तार से बता सकता है?
2 जवाब
ईएल चर एक पृष्ठ-, या अनुरोध-, या सत्र-, या एप्लिकेशन-स्कोप विशेषता का संदर्भ देते हैं (उस क्रम में प्रत्येक दायरे का निरीक्षण किया जाता है)। वे स्थानीय स्क्रिप्टलेट चर का संदर्भ नहीं देते हैं।
इसलिए, चूंकि आपके पास s1
, s2
, a
या dObj
नाम के किसी भी क्षेत्र में कोई विशेषता नहीं है, डिफ़ॉल्ट मानों का उपयोग किया जाता है (0
)।
परिणाम वही होंगे जिनकी आप अपेक्षा कर रहे हैं यदि स्क्रिप्टलेट कोड निम्नलिखित होगा:
<%
String s1 = "aaa ";
String s2 = "22";
Double dObj = new Double(3.5);
int a;
a = 12;
request.setAttribute("s1", s1);
request.setAttribute("s2", s2);
request.setAttribute("dObj", dObj);
request.setAttribute("a", a);
%>
एक अच्छी तरह से आर्किटेक्टेड एप्लिकेशन में, इन विशेषताओं को एक सर्वलेट द्वारा सेट किया जाएगा जो आपके जेएसपी को भेजेगा, या एक जेएसपी टैग (उदाहरण के लिए <c:set>
) द्वारा, लेकिन एक स्क्रिप्टलेट द्वारा नहीं। अब स्क्रिप्टलेट का उपयोग नहीं किया जाना चाहिए।
बस Google "JSP EL अंकगणित" और आपको यहां बहुत सारे उदाहरण खोजने चाहिए, जैसे: http://www.roseindia.net/jsp/simple-jsp-example/ExpressionLanguageBasicArithmetic.shtml
परिणाम इस बात पर निर्भर करते हैं कि ईएल {} टैग के अंदर वस्तुओं का मूल्यांकन कैसे किया जाता है।
संबंधित सवाल
नए सवाल
jsp
JSP (JavaServer Pages) एक जावा-आधारित दृश्य तकनीक है जो सर्वर मशीन पर चल रही है जो आपको टेम्पलेट टेक्स्ट को (HTML, CSS, जावास्क्रिप्ट और इसी तरह क्लाइंट साइड भाषाओं में) लिखने और बैकएंड जावा कोड के साथ इंटरैक्ट करने की अनुमति देती है।