Thursday, 1 September 2016

servlet and jsp

सर्वलेट और JSP दोनों मूल रूप से Sun Microsystems (सन माइक्रोसिस्टम्स) में विकसित किए गए। JSP specification (JSP विनिर्देशन) के 1.2 संस्करण के साथ शुरू करते हुए, JavaServer Pages (जावासर्वर पेजेस) का विकास जावा समुदाय प्रक्रियाके तहत किया गया है। JSR 53 JSP 1.2 और सर्वलेट 2.3 विनिर्देशों दोनों को परिभाषित करता है और JSR 152 JSP 2.0 विनिर्देश को परिभाषित करता है। मई 2006 को JSP 2.1 विनिर्देश कोजावा EE 5 के भाग के रूप में JSR 245 के तहत जारी किया गया है। JSPs को एक JSP compiler (JSP कम्पाइलर) के द्वारा सर्वलेट्स में कम्पाइल किया जाता है। कम्पाइलर या तो जावा कोड में एक सर्वलेट उत्पन्न करता है जो फिर जावा कम्पाइलर के द्वारा कम्पाइल किया जाता है, या यह बाईट कोड के लिए सर्वलेट को कम्पाइल कर सकता है जो प्रत्यक्ष रूप से निष्पादित किया जा सकता है। JSPs की व्याख्या ओन-द-फ्लाई भी की जा सकती है, इससे पुनः लोड परिवर्तनों में लगने वाला समय कम हो जाता है। चाहे JSP कम्पाइलर एक सर्वलेट के लिए जावा स्रोत कोड को उत्पन्न करे या सीधे बाईट कोड को उत्पन्न करे, यह इस बात को समझने में मदद करता है की JSP कम्पाइलर कैसे पेज को जावा सर्वलेट में रूपांतरित कर देता है।


JavaServer Pages (जावासर्वर पेजेस) (JSP) एक सर्वर साइड जावा तकनीक है, जो एक जावा वेब अनुप्रयोग कंटेनर (सर्वर) के लिए एक वेब ग्राहक के अनुरोध के जवाब में HTMLXML, या अन्य दस्तावेजों के प्रकारों के साथ, गतिक रूप से विकसित किये गए वेब पेज का निर्माण करने के लिए सॉफ्टवेयर का विकास करने वाले लोगों की मदद करती है। इसे सक्षम बनाने के लिए एक HTML पेज file extension .jsp को दिया जाता है और एक XML मार्क अप file extension .jspx, को दिया जाता है, ताकि जावा सर्वर (कंटेनर) यह पहचान लेगा कि फाइल को ग्राहक को भेजने से पहले JSP प्रोसेसिंग की जरुरत है। JSP पेजों को सर्वर में लोड किया जाता है और इसे एक संरचित विशेष रूप से इन्सटाल किये गए Java server packet (जावा सर्वर पैकेट) से ओपरेट किया जाता है जिसे J2EE Web Application (J2EE वेब एप्लीकेशन) कहा जाता है, इसे अक्सर एक .war या .ear फाइल संग्रह के रूप में पैक किया जाता है।
यह तकनीक जावा कोड को और विशिष्ट पूर्व परिभाषित क्रियाओं को स्टेटिक पेज सामग्री में प्रवेश करने की अनुमति देती है और हर पेज के अनुरोध पर रनटाइम पर सर्वर पर संकलन की अनुमति देती है। जावा सर्वर (J2EE विनिर्देशन) और पेज स्क्रिप्ट दोनों और/या विस्तृत कस्टमाइज्ड प्रोग्रामिंग एक विशेष पहले से इंस्टाल किये गए बेस प्रोग्राम के द्वारा ओपरेट की जाती है, यह प्रोग्राम एक आभासी या वर्चुअल मशीन कहलाता है, जो मेजबान के ऑपरेटिंग सिस्टम को एकीकृत करता है, यह प्रकार Java Virtual Machine (जावा वर्चुअल मशीन) (JVM) होता है। क्योंकि या तो, एक Compiler-JVM set (कम्पाइलर- JVM सेट) (जो एक SDK या JDK कहलाता है) या लोन JVM (जो JRE, Java Runtime Environment(जावा रनटाइम एन्वायरनमेंट) कहलाता है) या दोनों अधिकांश कंप्यूटर प्लेटफोर्म OSs के लिए बने हैं और JVM के लिए कम्पाइल किये गए प्रोग्राम विशेष जावा बाईट कोड फाइलों में कम्पाइल किये जाते हैं, इसके लिए JVM बाईट कोड फाइलें (कम्पाइल किये गए जावा प्रोग्राम के वर्ग की फाइलें) प्लेटफोर्मों के बीच प्रभावी रूप से स्थानांतरित की जा सकती हैं, जिसके लिए विशेष परिस्थितियों या वर्जनिंग कमपेटीबिलिटी के आलावा पुनः कम्पाइल करने की जरुरत नहीं होती है।
इन J2EE सर्वलेट या J2EE JSP प्रोग्रामों के लिए स्रोत कोड की आपूर्ति लगभग हमेशा J2EE JSP सामग्री और J2EE वेब अनुप्रयोग के साथ की जाती है क्योंकि सर्वर उन्हें लोड करते समय कम्पाइलर को बुलाता है। इन छोटे विस्तार कार्यक्रम (कस्टम टैग, सर्वलेट, बीन्स, पेज स्क्रिप्टिंग) चार होते हैं और इनके अपडेट किये जाने की संभावना होती है, या रन टाइम शुरू होने से पहले इन्हें परिवर्तित किया जा सकता है, या यह बीच बीच में किया जाता है, विशेष रूप से जब ये खुद JSP पेज अनुरोध भेजते हैं, इसे जरुरत होती है कि JSP सर्वर की पहुँच एक ava compiler (जावा कम्पाइलर) को हो (SDK या JDK) और आवश्यक स्रोत कोड (JVM JRE और बाईट कोड वर्ग की फाइलें साधारण रूप से नहीं) सर्व करने की विधि का सफलतापूर्वक उपयोग कर सके.
JSP सिंटेक्स के दो बुनियादी प्रकार हैं, scriptlet (स्क्रिप्टलेट) और markup (मार्कअप) हालांकि मूल रूप से पेज या तो HTML या XML मार्क अप होते हैं। Scriptlet tagging (स्क्रिप्टलेट टैगिंग) (स्क्रिप्टलेट तत्व कहलाते हैं) (सीमांकित) मार्क अप के साथ ब्लोक्स ऑफ़ कोड प्रभावी रूप से मार्क अप नहीं होते हैं और किसी भी API से सम्बंधित जावा सर्वर (उदाहरण सर्वर जो खुद बाइनरी को चला रहें हैं या डाटा बेस कनेक्शन API या जावा मेल API) या अधिक विशिष्ट JSP API भाषा कोड को अनुमति देते हैं कि वह JSP फाइल में अपलब्ध करायी गयी सही घोषणाओं से युक्त एक HTML या XML पेज में प्रवेश कर जाएं और पेज के फाइल एक्सटेंशन प्रयुक्त किये जाते हैं।

स्क्रिप्टलेट ब्लॉक्स को खुद ब्लॉक्स में पूरा होने की जरुरत नहीं होती है, स्टेटमेंट की जरुरत के अनुसार खुद ब्लॉक की आखिरी लाइन पूरी की जाती है, जो विश्लेषणात्मक रूप से सही होती है, इसे एक बाद के ब्लॉक में पूरा किया जा सकता है। इनलाइन कोडिंग सेक्शन को विभाजित करने की यह प्रणाली step over scripting (स्टेप ओवर स्क्रिप्टिंग) कहलाती है, क्योंकि इसे स्टेप ओवर करकेस्टेटिक मार्क अप के चारों और लपेटा जा सकता है। रनटाइम पर (एक ग्राहक के अनुरोध के दौरान) कोड को कम्पाइल किया जाता है और इसका मूल्यांकन किया जाता है, लेकिन कोड का कम्पाईलेशन (संकलन) आम तौर पर तब होता है जब फाइल के कोड में कोई परिवर्तन होता है।
JSP सिंटेक्स या वाक्यविन्यास में अतिरिक्त XML की तरह के टैग होते हैं, जो JSP एक्शन कहलाते हैं, इनका उपयोग निर्माणात्मक क्रियाओं में किया जाता है। इसके अतिरिक्त, प्रौद्योगिकी JSP टैग लायब्ररीज के निर्माण के लिए अनुमति देता है जो मानक HTML या XML टैग के लिए एक्सटेंशन के रूप में कार्य करता है। JVM के द्वारा ओपरेट किये गए लायब्ररी, एक वेब सर्वर की क्षमताओं के विस्तार के प्लेटफोर्म स्वतंत्र तरीके उपलब्ध कराता है।

JSP Tutorial

jsp tutorial with example
JSP technology is used to create web application just like Servlet technology. It can be thought of as an extension to servlet because it provides more functionality than servlet such as expression language, jstl etc.
A JSP page consists of HTML tags and JSP tags. The jsp pages are easier to maintain than servlet because we can separate designing and development. It provides some additional features such as Expression Language, Custom Tag etc.

Advantage of JSP over Servlet

There are many advantages of JSP over servlet. They are as follows:

1) Extension to Servlet

JSP technology is the extension to servlet technology. We can use all the features of servlet in JSP. In addition to, we can use implicit objects, predefined tags, expression language and Custom tags in JSP, that makes JSP development easy.

2) Easy to maintain

JSP can be easily managed because we can easily separate our business logic with presentation logic. In servlet technology, we mix our business logic with the presentation logic.

3) Fast Development: No need to recompile and redeploy

If JSP page is modified, we don't need to recompile and redeploy the project. The servlet code needs to be updated and recompiled if we have to change the look and feel of the application.

4) Less code than Servlet

In JSP, we can use a lot of tags such as action tags, jstl, custom tags etc. that reduces the code. Moreover, we can use EL, implicit objects etc.



No comments:

Post a Comment