JSP अभिव्यक्ति भाषा (ईएल) ट्यूटोरियल

विषय - सूची:

Anonim

अभिव्यक्ति भाषा (ईएल) क्या है?

एक्सप्रेशन लैंग्वेज (ईएल) वह तंत्र है जो जावा बीन घटक में संग्रहीत डेटा की पहुंच को आसान बनाता है और अन्य ऑब्जेक्ट जैसे अनुरोध, सत्र और एप्लिकेशन, आदि। जेएसपी में कई ऑपरेटर हैं जो ईएल में उपयोग किए जाते हैं जैसे अंकगणितीय और तार्किक ऑपरेटर प्रदर्शन करने के लिए। अभिव्यक्ति। इसे JSP 2.0 में पेश किया गया था

इस ट्यूटोरियल में, आप सीखेंगे-

  • अभिव्यक्ति भाषा (ईएल) का JSP सिंटेक्स
  • JSP अगर-और
  • JSP स्विच
  • JSP लूप के लिए
  • JSP जबकि लूप
  • JSP ऑपरेटर्स

अभिव्यक्ति भाषा (ईएल) का JSP सिंटेक्स

EL का सिंटैक्स : $ (अभिव्यक्ति)

  • जेएसपी में, ब्रेसिज़ में जो कुछ भी मौजूद है, आउटपुट स्ट्रीम पर भेजे गए रनटाइम पर मूल्यांकन किया जाता है।
  • अभिव्यक्ति एक वैध ईएल अभिव्यक्ति है और इसे एक स्थिर पाठ के साथ मिलाया जा सकता है और बड़ी अभिव्यक्ति बनाने के लिए अन्य अभिव्यक्ति के साथ जोड़ा जा सकता है।

एक बेहतर विचार प्राप्त करने के लिए, JSP में अभिव्यक्ति कैसे काम करती है, हम नीचे दिए गए उदाहरण से देखेंगे।

इस उदाहरण में, हम देखेंगे कि कैसे EL का उपयोग दो संख्याओं (1 + 2) को जोड़ने के लिए एक ऑपरेटर के रूप में किया जाता है और क्रमशः आउटपुट प्राप्त करता है।

<% @ पृष्ठ भाषा = "जावा" सामग्रीpageEncoding = "ISO-8859-1"%><सिर><मेटा http-equiv = "सामग्री-प्रकार" सामग्री = "पाठ / html; चारसेट = ISO-8859-1"><शीर्षक> गुरु JSP1 <शरीर> अभिव्यक्ति है: $ {1 + 2};

कोड की व्याख्या:

  • कोड लाइन 11: अभिव्यक्ति भाषा (ईएल) सेट है जहां हम दो नंबर 1 + 2 जोड़ रहे हैं, इसलिए यह 3 के रूप में आउटपुट देगा।

जब आप उपरोक्त कोड निष्पादित करते हैं, तो आपके पास निम्न आउटपुट होंगे।

आउटपुट :

  • अभिव्यक्ति है: 3 (संख्या 1 + 2 को जोड़ा जाएगा और आउटपुट के रूप में काम करेगा)

प्रवाह नियंत्रण विवरण:

JSP जावा की शक्ति को अनुप्रयोग में सन्निहित करता है। हम JSP प्रोग्रामिंग में जावा के सभी एपीआई और बिल्डिंग ब्लॉक्स का उपयोग कर सकते हैं, जिसमें कंट्रोल फ्लो स्टेटमेंट भी शामिल हैं जिसमें निर्णय लेना और लूप स्टेटमेंट शामिल हैं।

नीचे वर्णित प्रवाह नियंत्रण बयान के दो प्रकार हैं;

  1. निर्णय लेना-कथन करना
  2. लूप विवरण

निर्णय करना:

JSP में निर्णय लेने का कथन इस बात पर आधारित है कि क्या शर्त सेट सही है या गलत। कथन तदनुसार व्यवहार करेगा।

नीचे वर्णित निर्णय लेने के दो प्रकार हैं:

  1. यदि नहीं तो
  2. स्विच

JSP अगर-और

"यदि अन्य" कथन सभी नियंत्रण प्रवाह विवरणों का मूल है, और यह प्रोग्राम को कोड के निश्चित भाग को निष्पादित करने के लिए कहता है, यदि विशेष परीक्षण सत्य का मूल्यांकन करता है।

इस शर्त का उपयोग एक से अधिक स्थितियों के लिए परीक्षण करने के लिए किया जाता है कि वे सही हैं या गलत।

  • यदि पहली शर्त सत्य है तो "इफ ब्लॉक" निष्पादित होता है और
  • यदि यह गलत है तो "और ब्लॉक" निष्पादित किया जाता है

सिंटेक्स के लिए यदि - और कथन :

If(test condition){//Block of statements}else{//Block of statements}

इस उदाहरण में,

हम चर लेने के द्वारा "यदि और" स्थिति का परीक्षण करने जा रहे हैं और मान की जाँच करता है कि चर के साथ क्या मेल खाता है, तो यह प्रारंभिक है:

<% @ पृष्ठ भाषा = "जावा" सामग्रीpageEncoding = "ISO-8859-1"%><सिर><मेटा http-equiv = "सामग्री-प्रकार" सामग्री = "पाठ / html; चारसेट = ISO-8859-1"><शीर्षक> गुरु JSP2 <शरीर><%! int month = 5; %><% if (महीना == 2) {%> इसका फरवरी <%} और {%> फरवरी के अलावा किसी भी महीने <%}%>

कोड की व्याख्या:

  • कोड लाइन 10: नाम वाले महीने को वैरिएबल टैग में 5 से शुरू किया जाता है
  • कोड लाइन 11: ईएल टैग्स में "इफ कंडीशन" बताते हुए कहा जाता है कि यदि महीना 2 के बराबर है (स्थिति यहां या उससे अधिक परखी जाती है)
  • कोड लाइन 12: यदि यह शर्त सही है कि परिवर्तनशील महीना 2 है तो यह आउटपुट स्ट्रीम पर प्रिंट हो जाएगा
  • कोड लाइन 13-15: यदि उपरोक्त स्थिति विफल हो जाती है तो यह अन्य सभी मामलों के लिए दूसरे भाग में चला जाएगा जहां स्टेटमेंट आउटपुट स्ट्रीम पर प्रिंट हो जाएगा और स्थिति बंद हो जाएगी

जब आप उपरोक्त कोड निष्पादित करते हैं, तो आपके पास निम्न आउटपुट होंगे।

आउटपुट:

  • महीने के बाद से हमारे पास 5 है जो # 2 (फरवरी) के बराबर नहीं है। इसलिए, हमारे पास "फरवरी के अलावा कोई भी महीना" है (महीने का उल्लेख 5 के रूप में किया गया है इसलिए इसे निष्पादित किया जाता है)

JSP स्विच

स्विच स्टेटमेंट के बॉडी को "स्विच ब्लॉक" कहा जाता है।

  • स्विच केस का उपयोग संभावित निष्पादन पथों की संख्या की जांच करने के लिए किया जाता है।
  • एक स्विच का उपयोग सभी डेटा प्रकारों के साथ किया जा सकता है
  • स्विच स्टेटमेंट में एक से अधिक मामले और एक डिफ़ॉल्ट केस होता है
  • यह अभिव्यक्ति का मूल्यांकन करता है फिर मिलान मामले के बाद सभी बयानों को निष्पादित करता है

स्विच स्टेटमेंट के लिए सिंटैक्स :

switch (operator){Case 1:Block of statementsbreak;Case 2:Block of statementsbreak;case n:Block of statementsbreak;default:Block of statementsbreak;}
  • स्विच ब्लॉक एक पैरामीटर से शुरू होता है, जो ऑपरेटर है जिसे पारित करने की आवश्यकता है और
  • फिर अलग-अलग मामले होते हैं जो ऑपरेटर और उस मैच के साथ जो भी केस निष्पादित होता है, प्रदान करता है।

नीचे उदाहरण में,

हमने एक चर सप्ताह को परिभाषित किया है, और यह मामले के साथ मेल खाता है जो भी सच है। इस मामले में, सप्ताह 2 है इसलिए 2 एन डी मामले का मिलान किया जाता है, और आउटपुट मंगलवार है:

<% @ पृष्ठ भाषा = "जावा" सामग्रीpageEncoding = "ISO-8859-1"%><सिर><मेटा http-equiv = "सामग्री-प्रकार" सामग्री = "पाठ / html; चारसेट = ISO-8859-1"><शीर्षक> गुरु JSP3 <शरीर><%! int सप्ताह = 2; %><% स्विच (सप्ताह) {मामला 0:out.println ("रविवार");टूटना;मामला एक:out.println ("सोमवार");टूटना;मामला 2:out.println ("मंगलवार");टूटना;केस 3:out.println ("wednesday");टूटना;मामला 4:out.println ("गुरुवार");टूटना;केस 5:out.println ("Friday");टूटना;चूक:out.println ("शनिवार");}%>

कोड की व्याख्या:

  • कोड लाइन 10: सप्ताह के नाम वाले चर को अभिव्यक्ति टैग में 2 से आरंभ किया जाता है
  • कोड लाइन 11: ईएल टैग में स्विच केस शुरू किया जाता है जहां सप्ताह को पैरामीटर के रूप में पारित किया जाता है
  • कोड लाइन 12 - 29: सभी मामलों का उल्लेख केस 0 से शुरू होकर 5 तक होता है, जहां वीक पैरामीटर का मान मामलों से मेल खाता है, और तदनुसार आउटपुट प्रिंट होता है। इस स्थिति में, मान 2 है इसलिए केस 2 को इस मामले में निष्पादित किया जाएगा। यहां "आउट" जेएसपी का वर्ग है जो उत्पन्न प्रतिक्रिया के लिए आउटपुट स्ट्रीम लिखता है और "प्रिंटलाइन" उस वर्ग की एक विधि है।
  • कोड लाइन 30-32: यदि उपरोक्त सभी मामले विफल हो जाते हैं तो यह डिफ़ॉल्ट भाग में चला जाएगा और निष्पादित हो जाएगा, जहां स्टेटमेंट आउटपुट स्ट्रीम पर प्रिंट होगा और स्थिति बंद हो जाएगी

जब आप उपरोक्त कोड निष्पादित करते हैं, तो आपके पास निम्न आउटपुट होंगे।

आउटपुट:

  • इस मामले में आउटपुट मंगलवार है क्योंकि दूसरा मामला कहा जाता है।

लूप विवरण

JSP लूप के लिए

इसका उपयोग तत्वों को एक निश्चित स्थिति के लिए पुनरावृत्त करने के लिए किया जाता है, और इसके तीन पैरामीटर हैं।

  • वैरिएबल काउंटर शुरू किया गया है
  • लूप तक स्थिति को निष्पादित किया जाना है
  • काउंटर को बढ़ाना होगा

लूप सिंटैक्स के लिए:

For(inti=0;i

इस उदाहरण में,

हमारे पास लूप के लिए है जो काउंटर तक दिए गए पुनरावृत्तियों की संख्या से कम है:

<% @ पृष्ठ भाषा = "जावा" सामग्रीpageEncoding = "ISO-8859-1"%><सिर><मेटा http-equiv = "सामग्री-प्रकार" सामग्री = "पाठ / html; चारसेट = ISO-8859-1"><शीर्षक> गुरु JSP4 <शरीर><%! int संख्या = 5; %><% out.println ("नंबर हैं:");for (int i = 0; मैं 

कोड के लिए स्पष्टीकरण:

  • कोड लाइन 10: "संख्या" नाम के परिवर्तनीय को अभिव्यक्ति टैग में 5 से शुरू किया जाता है
  • कोड लाइन ११-११: ईएल टैग में, "आउट" जेएसपी का वर्ग है और "प्रिंट्लन" आउट ऑफ मेथड है, जो आउटपुट स्ट्रीम में प्रिंट करता है और लूप के लिए शुरू होता है जिसमें तीन पैरामीटर होते हैं:
    • परिवर्तनीय I को 0 से प्रारंभ किया गया है,
    • ऐसी स्थिति दी गई है जहां मैं स्थानीय चर संख्या से कम हो,
    • और मैं हर बार लूप iterates बढ़ जाता है।

"Forloop" के शरीर में, JSP का एक वर्ग होता है, जो कि विधि println का उपयोग करके आउटपुट स्ट्रीम में प्रिंट करता है, जहाँ हम वैरिएबल i को प्रिंट कर रहे हैं।

जब आप उपरोक्त कोड निष्पादित करते हैं, तो आपके पास निम्न आउटपुट होंगे।

आउटपुट:

  • आउटपुट संख्याएं 0 1 2 3 4. इस उदाहरण में, हम यह शर्त दे रहे हैं कि जब तक काउंटर एक चर के बराबर से कम न हो जाए, तब तक "लूप" निष्पादित किया जाना है। संख्या 5 है इसलिए लूप 0 से शुरू होगा और 4 (5 बार) तक चलेगा। इसलिए आउटपुट।

JSP जबकि लूप

इसका उपयोग उन तत्वों को पुनरावृत्त करने के लिए किया जाता है जिनमें यह स्थिति का एक पैरामीटर है।

वाक्य - विन्यास:

While(i

इस उदाहरण में,

हमारे पास एक समय का लूप है जो दिन तक चलना होगा काउंटर के बराबर से अधिक है:

<% @ पृष्ठ भाषा = "जावा" सामग्रीpageEncoding = "ISO-8859-1"%><सिर><मेटा http-equiv = "सामग्री-प्रकार" सामग्री = "पाठ / html; चारसेट = ISO-8859-1"><शीर्षक> गुरु JSP5 <शरीर><%! int दिन = 2; int i = 1; %><% जबकि (दिन> = i) {अगर (दिन == i) {out.println ("इसका सोमवार");टूटना;}मैं ++;}%>

कोड की व्याख्या:

  • कोड लाइन 10: नाम दिया गया वैरिएबल 1 से आरंभिक है और अभिव्यक्ति टैग में दिन 2 है
  • कोड लाइन 11-17: ईएल टैग्स में, "लूप" है, जब तक कि हम एक शर्त सेट करेंगे जब तक कि दिन बड़ा या बराबर नहीं हो जाता है जब तक कि यह सही नहीं होगा। (दिन> = मैं)

    इसके भीतर "अगर कंडीशन" (दिन I के बराबर है) और "अगर कंडीशन" सही है, तो यह आउटपुट स्ट्रीम को प्रिंट करेगा, और यह लूप को बाहर कर देगा, जबकि i वैरिएबल इंप्रूव्ड है और लूप iterates है।

जब हम कोड निष्पादित करते हैं, तो हमारे पास निम्नलिखित आउटपुट होंगे

आउटपुट है:

  • इस कोड का आउटपुट "इसका सोमवार" होगा।

JSP ऑपरेटर्स

JSP संचालक इसके अधिकांश अंकगणितीय और तार्किक संचालकों का समर्थन करते हैं जो कि अभिव्यक्ति भाषा (EL) टैग के भीतर जावा द्वारा समर्थित हैं।

अक्सर उपयोग किए गए ऑपरेटरों का उल्लेख नीचे किया गया है:

निम्नलिखित ऑपरेटर हैं:

एक बीन संपत्ति या मानचित्र प्रविष्टि तक पहुँचें
[] किसी ऐरे या सूची तत्व तक पहुँचें
() मूल्यांकन आदेश को बदलने के लिए एक सबडिफ़ॉर्मेशन समूह
+ इसके अलावा
- किसी मूल्य का घटाव या निषेध
* गुणा
/ या div विभाजन
% या mod मोडुलो (शेष)
== या eq समानता के लिए परीक्षण करें
! = या ने असमानता के लिए परीक्षण
<या ले ट से कम के लिए टेस्ट करें
> या जी.टी. से अधिक के लिए टेस्ट
<= या ले कम या बराबर के लिए परीक्षण करें
> = या भू से अधिक या बराबर के लिए टेस्ट
&& या और तार्किक और के लिए टेस्ट
|| या या तार्किक OR के लिए टेस्ट
! या नहीं यूनिली बूलियन पूरक
खाली रिक्त चर मानों के लिए परीक्षण करें

इस उदाहरण में,

  • हम दो वैरिएबल num1 और num2 घोषित कर रहे हैं और फिर एक वेरिएबल num3 लेते हैं, जहाँ हम num1 और num2 को जोड़ने के लिए JSP ऑपरेटर + का उपयोग करते हैं और num3 प्राप्त करते हैं।
  • फिर हम एक शर्त की जाँच करते हैं कि क्या J3 ऑपरेटरों ((!,>) और) का उपयोग करके संख्या 3 के बराबर नहीं है
  • फिर एक और वेरिएबल num4 को दो num1 और num2 को गुणा करके हम num4 प्राप्त करते हैं।

इन सभी नंबरों को हमारे आउटपुट के रूप में प्रिंट किया जाना चाहिए:

<% @ पृष्ठ भाषा = "जावा" सामग्रीpageEncoding = "ISO-8859-1"%><सिर><मेटा http-equiv = "सामग्री-प्रकार" सामग्री = "पाठ / html; चारसेट = ISO-8859-1"><शीर्षक> गुरु JSP6 <शरीर><% int num1 = 10; int num2 = 50;int num3 = num1 + num2;अगर (num3! = 0 || num3> 0) {int num4 = num1 * num2;out.println ("नंबर 4 है" + num4);out.println ("संख्या 3" + संख्या 3 है);}%>

कोड की व्याख्या:

  • कोड लाइन 10: संख्या 1 नाम के चर को 10 और अंक 2 से 50 को अभिव्यक्ति टैग्स में आरंभीकृत किया जाता है
  • कोड लाइन 11: चर num3, num1 और num2 का योग है, जहां हम अतिरिक्त ऑपरेटर का उपयोग कर रहे हैं
  • कोड लाइन 12-16: ईएल टैग में, हमने एक ओआरडी का उपयोग किया है जो तार्किक ऑपरेटर और अंकगणितीय ऑपरेटरों की जांच करने के लिए है कि क्या उस स्थिति में अंक 3 से अधिक है या नहीं। OR का उपयोग तब किया जाता है जब कोई भी स्थिति ऐसी स्थिति में सही होती है, तो यह "if केस" में प्रवेश करेगी जहां हम दो संख्याओं "num1" और "num2" को बढ़ा रहे हैं और "num4" में आउटपुट प्राप्त कर रहे हैं और यह आउटपुट स्ट्रीम को प्रिंट करेगा।

जब आप उपरोक्त कोड निष्पादित करते हैं, तो आपके पास निम्न आउटपुट होंगे।

आउटपुट:

  • पहला आउटपुट नंबर 4 है 500 (वेरिएबल संख्या 4 जो कि num1 * num2 है)
  • दूसरा आउटपुट नंबर 3 है 60 (वेरिएबल num3 जो num1 + num2 है)

सारांश:

  • जेएसपी एक्सप्रेशन लैंग्वेज (ईएल) जेवबीन घटकों में संग्रहीत डेटा के लिए एप्लिकेशन को एक्सेस करना आसान बनाता है।
  • यह उन अभिव्यक्तियों को भी बनाने की अनुमति देता है जो अंकगणित और तार्किक दोनों हैं।
  • ईएल टैग के भीतर हम पूर्णांक का उपयोग कर सकते हैं। फ्लोटिंग पॉइंट नंबर, स्ट्रिंग्स और बुलियन मान।
  • जेएसपी में हम ईएल टैग का उपयोग करके लूप और निर्णय लेने के स्टेटमेंट का भी उपयोग कर सकते हैं