जावा ईई वेब विकास, मैं कहां से शुरू करूं और मुझे किन कौशल की आवश्यकता है? [बन्द है]


216

मैं सीखना चाहता हूं, कम से कम एक बुनियादी स्तर पर, जावा वेब एप्लिकेशन (.NET बैकग्राउंड से आने वाला) कैसे बनाया जाए। मैं जमीन से एक सरल सीएमएस प्रकार के अनुप्रयोग का निर्माण, निर्माण करने में सक्षम होना चाहता हूं।

वास्तव में मुझे क्या सीखने की ज़रूरत है?

Tomcat जावा के लिए एक अच्छा वेब सर्वर लगता है।

वेब के लिए क्या विकल्प हैं? मुझे पता है कि एक ओआरएम के लिए हाइबरनेट है

क्या जावा में MVC है? JSP के बारे में क्या ? क्या MVC और JSP एक साथ हो सकते हैं? नेटबीन्स ?

हो सकता है कि एक किताब जिसमें ये सब शामिल हों?

जवाबों:


261

(अपडेट किया गया 2020)

सबसे पहले, "जावा ईई" को सितंबर 2019 से " जकार्ता ईई " नाम दिया गया है , जो कि संस्करण 8 से शुरू होता है। ऐतिहासिक रूप से, "जे 2 ईई" शब्द भी था, जो संस्करण 1.2 से 1.4 तक कवर किया गया था। "जावा ईई" संस्करण 5 तक कवर किया गया। 8. जावा प्लेटफॉर्म, एंटरप्राइज संस्करण, विकिपीडिया पर इतिहास भी देखें ।

वास्तव में मुझे क्या सीखने की ज़रूरत है?

मुझे लगता है कि आप पहले से ही HTML , CSS और JS जैसी क्लाइंट साइड तकनीकों से परिचित हैं , इसलिए मैं इसके बारे में विस्तार से नहीं बताऊंगा। मैं यह भी मानता हूं कि आप पहले से ही मूल जावा से परिचित हैं। ओरेकल के द जावा ट्यूटोरियल्स का पालन करें और यदि संभव हो तो, एक OCP पुस्तक या पाठ्यक्रम भी प्राप्त करें।

तब आप जावा वेब विकास की मूल अवधारणाओं को जानने के लिए जेएसपी / सर्वलेट से शुरू कर सकते हैं। ओरेकल के जावा ईई 5 ट्यूटोरियल भाग II अध्याय 3 - 8 और Coreservlets.com ( शुरुआती-मध्यवर्ती और उन्नत, जेडीबीसी भी ) में अच्छे ट्यूटोरियल पाए जा सकते हैं । ध्यान दें कि जावा ईई 6 के बाद से, जेएसपी को जेएसएफ के पक्ष में जावा ईई ट्यूटोरियल से हटा दिया गया है और जेएसपी मूल रूप से तब से नहीं बदला गया है। इसलिए आप इसके लिए काफी पुराने जावा ईई 5 ट्यूटोरियल का सुरक्षित रूप से उपयोग कर सकते हैं। JSP के संबंध में सबसे महत्वपूर्ण बात यह है कि <%स्क्रिप्ट %>का उपयोग करके JSP फ़ाइलों में सादा जावा कोड लिखना आधिकारिक तौर पर 2003 से हतोत्साहित किया गया है। यह भी देखें कि JSP फ़ाइलों में जावा कोड से कैसे बचें? इसलिए कोई भी ट्यूटोरियल जो अभी भी स्क्रिप्टलेट को कवर करता है, को छोड़ दिया जाना चाहिए क्योंकि वे निश्चित रूप से आपको बुरी प्रथाओं को सीखने के नीचे की ओर ले जाएंगे।

स्टैक ओवरफ्लो पर, आप JSP , सर्वलेट्स , JSTL और EL के बारे में अच्छे विकी पेज भी पा सकते हैं जहाँ आप आवश्यक चीजें सीख सकते हैं और अधिक उपयोगी लिंक पा सकते हैं।


Tomcat जावा के लिए एक अच्छा वेब सर्वर लगता है।

यह है। हालांकि यह क्षमताओं में सीमित है। यह मूल रूप से एक बेयरबोन सर्वलेट कंटेनर है, जो विशाल जावा ईई एपीआई के केवल जेएसपी / सर्वलेट भागों को लागू करता है। क्या तुमने कभी EJB या जेपीए जाना चाहते हैं, तो आपको एक और लेने के लिए करना चाहते हैं, जैसे WildFly , TomEE , Payara , लिबर्टी , WebLogic , आदि नहीं तो आप जावा ईई के बजाय स्प्रिंग उपयोग करना होगा। कोर इंजन को संशोधित किए बिना बेयरबोंस सर्वलेट कंटेनर में ईजेबी को स्थापित करना संभव नहीं है, आप टॉमकैट के मामले में मूल रूप से टॉमईई को फिर से स्थापित करेंगे। यह भी देखें कि वास्तव में जावा ईई क्या है? , मावेन के माध्यम से जेएसएफ पुस्तकालयों को ठीक से स्थापित और कॉन्फ़िगर कैसे करें? और टॉमकैट पर सीडीआई कैसे स्थापित और उपयोग करें?


मुझे पता है कि एक ओआरएम के लिए हाइबरनेट है।

पहले, जे 2 ईई युग के दौरान, जब जेपीए मौजूद नहीं था और ईजेबी 2 भयानक था, हाइबरनेट एक स्टैंडअलोन फ्रेमवर्क था और अक्सर स्प्रिंग के साथ संयोजन में ईजेबी को दबाने के लिए उपयोग किया जाता था। जावा ईई 5 (2006) में जेपीए की शुरुआत के बाद से, हाइबरनेट एक जेपीए कार्यान्वयन बन गया है। आप जकार्ता ईई ट्यूटोरियल भाग VIII में JPA सीख सकते हैं । इसके अलावा, स्प्रिंग से सीखे गए पाठों के आधार पर EJB3 में बहुत सुधार हुआ। यह भी देखें कि स्प्रिंग या EJB3 या उन सभी को एक साथ उपयोग करना कब आवश्यक या सुविधाजनक है?


क्या जावा में MVC है? JSP के बारे में क्या? क्या MVC और JSP एक साथ हो सकते हैं? JavaBeans?

जब आप मॉडल को दृश्य (रूपांतरण, सत्यापन, परिवर्तन श्रोताओं, आदि) के साथ बांधने की बात करते हैं, तो यह बहुत अधिक सुदृढीकरण हो सकता है। जावा ईई के एमवीसी ढांचे को जेएसएफ कहा जाता है । जावा ईई 6 से पहले यह जेएसपी पर चलता था, जो एक काफी विरासत दृश्य तकनीक है। JSP को फेसलेट्स द्वारा बदल दिया गया है । आप जकार्ता ईई ट्यूटोरियल भाग III अध्याय 7 - 17 में जेएसएफ सीख सकते हैं । आप जिस तरह से Tomcat पर JSF का उपयोग कर रहे हैं, उससे आपको केवल इसे अलग से स्थापित करना होगा। स्थापना निर्देश मोआजरा मुखपृष्ठ पर देखे जा सकते हैं। WildFly, TomEE, Payara, Liberty, WebLogic, आदि के रूप में एक पूर्ण जावा EE कार्यान्वयन पहले से ही JSF (और CDI, BV, JSONP, JAX-RS, EJB, JPA, आदि) प्रदान करता है, ताकि आपको बॉक्स की आवश्यकता न हो। इसे अलग से स्थापित करें। यह भी देखें कि मावेन के माध्यम से जेएसएफ पुस्तकालयों को ठीक से कैसे स्थापित करें और कॉन्फ़िगर करें?


हो सकता है कि एक किताब जिसमें ये सब शामिल हों?

कई किताबें हैं। मैं सामान्य रूप से जकार्ता ईई पर केंद्रित पुस्तक , जेएसएफ पर अधिक ध्यान केंद्रित पुस्तक और जेपीए पर केंद्रित पुस्तक के साथ शुरुआत करने की सिफारिश करूंगा । सुनिश्चित करें कि आप विषय को कवर करने वाली सबसे हालिया पुस्तक का चयन करें। पहले सबसे हाल ही में उपलब्ध संस्करण की जांच करें और फिर यह सुनिश्चित करें कि चुनी गई पुस्तक को कवर किया गया है। इस प्रकार निश्चित रूप से जावा ईई 5 या जेएसएफ 1.0 के लिए एक पुरानी किताब न चुनें, जबकि वर्तमान में पहले से ही जकार्ता ईई 8 और जेएसएफ 2.3 उपलब्ध है।

अंतिम लेकिन कम से कम, कृपया कोड स्निपेट स्क्रैपिंग साइटों को अनदेखा न करें, जो शिक्षण के बजाय विज्ञापन आय पर प्राथमिक फोकस के साथ शौकीनों द्वारा बनाए रखा गया हो, जैसे कि गुलाबइंडिया, ट्यूटोरियलस्पॉट, जेवाबीट, जर्नलदेव, जेवेटपॉइंट, कोडजवा, आदि। वे विज्ञापन लिंक को परेशान करके आसानी से पहचान सकते हैं / स्क्रिप्ट वाले बैनर और JSP कोड स्निपेट ।

यह सभी देखें:


Greate! उपयोगी, धन्यवाद। .Net में, आमतौर पर Wrox प्रेस की पुस्तक .net में सभी जानकारियों को कवर कर सकती है। बहुत मोटी किताब।
gfan

5
क्या StackOverflow में पिन पोस्ट की सुविधा नहीं है? काश ऐसा होता, तो मैं यह जवाब दे सकता था। धन्यवाद!
dww

JavaEE 5 ट्यूटोरियल का विकल्प होना चाहिए। मैं जानता हूँ कि Im एक noob है, और यह बहुत अच्छी तरह से yall। लेकिन ... उस ट्यूटोरियल से सीखने की कोशिश की जा रही है। इसकी बहुत कुछ सेटिंग्स पर निर्भर है और इसमें बंद है। इसलिए, मुझे NetBeans सीखने की आवश्यकता है। तब मुझे अपने सर्वर को छोड़ देना चाहिए और कांच की मछली के आगे बढ़ना चाहिए, सबसे आसान से चलाने और जानने के लिए सैंपलकोड खोजने की कोशिश करना। मैं सर्वर पर नहीं चला सकता। इसके बजाय मैं मावेन बिल्ड नामक किसी चीज़ से मिला था। मैंने सोचा कि मैंने कोशिश की जिसके परिणामस्वरूप ग्रहण हो रहा है! aparently मैं और साथ ही maven सीखने की जरूरत है, इस, कि अन्य और शैतान grandmo ...
लड़का

@brat: उत्तर में विकल्प और पुस्तकों के लिंक शामिल हैं।
बालुस

कुंआ। केवल एक जो बहुत कुछ कवर करता है। Coreserv ... यहाँ और वहाँ स्निपेट्स लेने थे। मैं अब ऑफिशियल JavaEE टुट के साथ पूरी तरह से चला गया :) बस एसडीके को डाउनलोड करने की जरूरत है, उदाहरण के लिए कोड को चलाने के लिए एक GlassFish सर्वर है जिसमें JDK 10 :( के साथ काम नहीं करना है, स्टार्टअप पर NullPointerException। एक हैक stackoverflow.com मिला। / सवाल / 47458119 / ... और इसलिए मुझे डाउनलोड करने की आवश्यकता है ... और इतने पर और इतने पर। मुझे लगता है कि मैं बस थोड़ा नीचे जा रहा हूं और सीखने के लिए हुप्स के माध्यम से कूदने के लिए कुतिया हूं ।:( वे इसे आसान नहीं बनाते हैं। noobs x)। चीयर्स :)
brat

28

वास्तव में मुझे क्या सीखने की ज़रूरत है?

न्यूनतम,

  • भाषा जावा
  • जावा एपीआई, डेटाबेस एक्सेस के लिए जेडीबीसी सहित
  • एक आईडीई, या एक पाठ संपादक + चींटी
  • जावा ईई, मूल रूप से, सर्वलेट्स और जेएसपी
  • एक सर्वलेट कंटेनर (जैसे टॉमकैट)

Tomcat जावा के लिए एक अच्छा वेब सर्वर लगता है।

यह "सभ्य" है। यदि आप ईजेबी में नहीं हैं, तो शायद आपको कुछ और सीखने की आवश्यकता नहीं होगी। ग्लासफिश 3 हाल ही में बहुत अच्छा लग रहा है, लेकिन मैंने अभी तक इसके साथ नहीं खेला है। ध्यान दें, यह वेब सर्वर की तुलना में "अधिक" है। यह एक सर्वलेट कंटेनर है (इसका अर्थ है कि यह सर्वलेट तकनीक का उपयोग करके ऐप चला सकता है)।

वेब के लिए क्या विकल्प हैं?

एक zillion विभिन्न चौखटे के बारे में। वास्तव में, एक को चुनना वास्तव में "मुश्किल" है। यह उन सभी की कोशिश करने के लिए बहुत ही आकर्षक है, लेकिन अंततः अक्षम्य है।

मुझे पता है कि एक ORM के लिए हाइबरनेट है।

मैं कुछ हद तक एंटी-ओआरएम हूं, लेकिन हाइबरनेट वह है जिसे आपको "पूर्ण" ओआरएम की आवश्यकता है। आप "आंशिक" ओआरएम का भी प्रयास कर सकते हैं, जैसे कि स्प्रिंग का जेडीबीसी समर्थन या आईबैटिस।

क्या जावा में MVC है? JSP के बारे में क्या? क्या MVC और JSP एक साथ हो सकते हैं? फलियां?

हां, अधिकांश जावा वेब फ्रेमवर्क MVC करते हैं। स्प्रिंग का MVC अच्छा है, लेकिन मैं कुछ और नहीं सुझा सकता (विशेष रूप से, स्ट्रट्स 1!)। JSP सिर्फ एक HTML (या XML) टेम्प्लेटिंग इंजन है। पुराने स्कूल जेएसपी, एम्बेडेड जावा कोड के साथ अनकूल है; टैग फ़ाइलों और पुस्तकालयों के साथ आधुनिक JSP बहुत अच्छा है।

मुझे लगता है कि अधिकांश फ्रेमवर्क आपको अपने बनाम रेंडर करने के लिए जेएसपी का उपयोग करने देंगे; स्प्रिंग का MVC और स्ट्रट्स करते हैं। कुछ आपको कुछ और भी उपयोग करने देंगे (वेग, फ्रीमार्कर, आदि)।

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


16

आपको वेब विकास के लिए HTML, CSS और जावास्क्रिप्ट - सभी सामान्य संदिग्धों की आवश्यकता है।

Tomcat में एक वेब सर्वर बनाया गया है, लेकिन यह एक सर्वलेट / JSP इंजन है । अपाचे शुद्ध वेब सर्वर है।

आपको JSP सीखने की ज़रूरत है, जो HTML आउटपुट उत्पन्न करने वाले सर्वलेट्स बनाने के लिए एक टेम्प्लेटिंग भाषा है। आप उन्हें JSTL का उपयोग करके लिखना चाहते हैं, स्क्रिप्ट्स को नहीं।

यदि आप CRUD अनुप्रयोग कर रहे हैं, तो आपको JDBC और संबंधपरक डेटाबेस सीखने की आवश्यकता होगी। आपको चाहिए कि हाइबरनेट या किसी अन्य ओआरएम की कोशिश करने से पहले, क्योंकि यह वह नींव है जिस पर वे बने हैं।

JavaBeans जावा ऑब्जेक्ट के लिए सिर्फ मानक हैं।

यदि आप इसके लिए तैयार हैं, तो मैं स्प्रिंग फ्रेमवर्क की सिफारिश करूंगा।


आप कहते हैं कि टॉमकैट में एक वेब सर्वर बनाया गया है, फिर और क्या है? मैंने सोचा कि यह सब एक वेब सर्वर है?
mrblah 16

6
@ मर्ब्लाह - टॉम्कट एक सर्वलेट इंजन है। यह सर्वलेट क्लासेस को प्रोसेस करने के लिए बनाया गया था (जो कि jsp के रूप में बदल गए हैं) और आउटपुट को ब्राउजर में सर्व करते हैं। इसके साथ ही, यह एक वेब सर्वर की तरह ही सभी नियमित फाइलों (छवियों, एचटीएमएल, सीएसएस, आदि) को भी परोसता है। यह एक पीएचपी मॉड्यूल के साथ अपाचे के लिए तुलनीय है।
नेमी

13

क्या जावा में MVC है?

जावा में स्ट्रेट्स 2 , स्प्रिंग एमवीसी जैसे विभिन्न ढांचे हैं

JSP के बारे में क्या?

JSP टेम्प्लेट लाइब्रेरी है। कुछ विकल्प हैं जिन्हें आप FreeMarker और वेग की तरह आज़मा सकते हैं । AFAIK फ़्रीमार्कर एक अच्छा टेम्पलेट लाइब्रेरी के रूप में उभर रहा है। JSP की तुलना में इसका हल्का है । इस FreeMarker की जाँच करें : JSP के लिए एक खुला विकल्प - JavaWorld

क्या MVC और JSP एक साथ हो सकते हैं?

मैं MVC को पहले बताए गए ढांचे के रूप में लेता हूं। सभी फ्रेमवर्क में JSP का समर्थन है, लेकिन आपको संबंधित फ्रेमवर्क प्रलेखन में अन्य टेम्पलेट लाइब्रेरी के लिए समर्थन की जांच करने की आवश्यकता है। AFAIK struts2 को Freemarker लिए एक बहुत अच्छा समर्थन हासिल है।

फलियां?

मुझे इसके बारे में ज्यादा जानकारी नहीं है। लेकिन बीन्स का उपयोग करके हम सीधे डेटा को डेटाबेस में मैप कर सकते हैं।

हो सकता है कि एक किताब जिसमें ये सब शामिल हों?

प्रत्येक रूपरेखा की अपनी पुस्तक है। के लिए struts2 - Struts 2 कार्रवाई में

स्ट्रिंग एमवीसी - स्प्रिंग और स्प्रिंग एमवीसी के लिए पुस्तकों की सिफारिश करने वाले इन सवालों पर एक नज़र डालें। स्प्रिंग फ्रेमवर्क और स्प्रिंग बुक्स के लिए पुस्तक सुझाव : कौन सा चुनना है

Fremarker का एक बहुत अच्छा प्रलेखन है - FreeMarker Manual

जावा में वेब विकास शुरू करने के लिए -

वैकल्पिक शब्द

http://www.amazon.com/SCWCD-Exam-Study-Kit-Certification/dp/1930110596


5

मैं पारंपरिक जावा वेब विकास विकल्पों में से अधिकांश को बहुत भारी वजन मानता हूं, और कुछ अच्छे विकल्प हैं:

  • Play एक MVC फ्रेमवर्क है, जो कि अधिक गतिशील JVM- आधारित भाषा के विपरीत, शुद्ध जावा के साथ चिपके रहते हुए, हल्के, सरल और तेजी से विकास को सक्षम करने पर केंद्रित है। यह काफी नया है, लेकिन पहले से ही प्रभावशाली है, और एक अच्छे समुदाय ने इसके चारों ओर जल्दी से निर्माण किया है।

  • ग्रेल्स एक एमवीसी ढांचा है, जो रूबी ऑन रेल्स से प्रेरित है, जो कि जावा-आधारित स्क्रिप्टिंग भाषा ग्रूवी में लिखा और उपयोग किया जाता है । एक मजबूत समुदाय के साथ, कब्र परिपक्व, मजबूत और व्यापक रूप से सम्मानित है। ग्रूवी मूल रूप से जावा का एक सुपरसेट है, जिसमें बेहतर सिंटैक्स और कुछ शानदार विशेषताएं हैं जैसे कि क्लोजर, इसलिए इसे सीखना जावा को सीखने का एक शानदार तरीका है।

  • यदि आपको RESTful वेब साइट्स / सेवाओं / एप्लिकेशनों का निर्माण करने / करने की आवश्यकता है, तो रेस्टलेट एक शानदार ढांचा है - मैं बहुत बड़ा प्रशंसक हूं। यह सरल, सीधा और अभी तक लचीला है। महान समुदाय भी।

  • Google का ऐप इंजन एक दिलचस्प विकल्प है। यह होस्ट किया गया है, जो ब्याज की हो सकती है या नहीं भी हो सकती है, लेकिन इसमें काफी सरल एपीआई और एक अच्छा एसडीके है।

मुझे यकीन है कि अन्य लोग भी हैं, लेकिन ये वही हैं जो मैं अपने सिर के ऊपर से सोच सकता हूं।

गुड लक और मजा करें!


ओह, और मैंने दूसरे दिन प्रुडेंस की खोज की: threecrickets.com/prudence
Avi Flax

3

मैं एक PHP / C प्रोग्रामिंग हूं और मैंने पाया है कि जावा प्रोग्रामिंग में निहित सभी वर्गों और प्रतिमानों को सीखे बिना मुझे जावा में कूदने में सक्षम बनाता है। Groovy ने मुझे जल्दी से उत्पादक होने में सक्षम बनाया, जबकि जावा और उपलब्ध सभी उपकरणों / रूपरेखाओं / पुस्तकालयों के बारे में अधिक जानने के लिए समय लिया।


3

यदि आप html, css, xml, जावास्क्रिप्ट आदि के साथ काम नहीं करना चाहते हैं।

वाडिन ढांचे की कोशिश करें , यह अच्छी तरह से प्रलेखित है, सीखना आसान है और सरल तरीके से अच्छी दिखने वाली यूआई बनाने में सक्षम बनाता है। (सिर्फ जावा कोड लिखें, निश्चित रूप से आपको कुछ सर्वलेट सर्वर की आवश्यकता है, टॉमकैट या जेट्टी ठीक होगी)


2

बेहतर है कि आप जावा सीखें। जब आप सर्वलेट्स और जेएसपी सीखते हैं। तब एमवीसी के लिए आप स्ट्रट्स या स्प्रिंग या किसी अन्य जावा / जावा इनेबल फ्रेमवर्क में जाते हैं।


0

चूंकि आप जावा में नए हैं, इसलिए मैं आपको सबसे पहले मूल भाषा सीखने की जोरदार सलाह दूंगा। इससे आपको यह जानने में मदद मिलेगी कि आप अपने वेब एप्लिकेशन को किस तकनीक में चुनना चाहते हैं।

एक अच्छा ऑनलाइन संसाधन सन जावा ट्यूटोरियल है - http://java.sun.com/docs/books/tutorial/

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.