2009-04-02 12 views
10

मैं समझने की कोशिश कर रहा हूं कि .NET में सर्वलेट्स और एप्लेट्स के संवाददाता क्या हैं लेकिन मुझे जावा में ज्यादा अनुभव नहीं है।.NET में सर्वलेट और एप्लेट के संवाददाता क्या हैं?

मुझे लगता है कि एप्लेट्स की तुलना चांदी की चीजों से की जा सकती है, जिसका अर्थ है कि आप ब्राउज़र से स्वतंत्र रूप से कोड करते हैं, लेकिन फिर ऐसा नहीं है क्योंकि (अन्य चीजों के बीच) आप ब्राउज़र के बाहर एक एप्लेट का पुनः उपयोग कर सकते हैं।

मैं एक जावा आधारित कॉलेज पाठ्यक्रम के लिए वेब प्रौद्योगिकियों प्रदर्शन करने की जरूरत है और मैं जब तक मैं एक ही सामान प्रदर्शित कर सकते हैं के रूप में नेट उपयोग कर सकते हैं।

कोई मदद या विचारों की सराहना की!

उत्तर

13

नेट में, HTTP हैंडलर (.ashx) शायद सर्वलेट के सबसे नज़दीकी चीज हैं। एप्लेट का सवाल है, वहाँ एक सीधा बराबर नहीं है, लेकिन siverlight शायद सबसे करीब है (हालांकि इसके करीब फ्लैश/JavaFX के लिए)

+1

HTTP हैंडलर सर्वलेट फिटलर के बराबर हैं और सर्विसलेट प्रति से नहीं हैं। उसी पर एमएसडीएन दस्तावेज पढ़ें। – sangupta

+0

मैं सैंडी से सहमत हूं। AciveX नियंत्रण Silverligth – OscarRyz

+0

@ सैंडी की तुलना में ऐप्पल की तरह अधिक हैं: क्या आपका मतलब हैट्टन हैंडलर या एचटीपी/मॉड्यूल /। यह बाद में है "क्षमता को गतिशील रूप से अनुरोधों और प्रतिक्रियाओं को बदलने के लिए प्रतिक्रियाओं को प्रदान करता है [...]" (http://java.sun.com/products/servlet/Filters.html)। – Richard

1

.NET में एप्लेट के लिए समकक्ष ActiveX नियंत्रण थे। सिल्वरलाइट आरआईए के लिए है, जो एडोब फ्लैश रनटाइम के समान है।

सर्वलेट्स ASP.NET पृष्ठों की तुलना में किया जा सकता है। एमएसडीएन पर निम्नलिखित आलेख को पढ़ने के तरीके की तुलना में, http://msdn.microsoft.com/en-us/library/aa478987.aspx

+0

मुझे नहीं लगता, एएसपी.नेट जेएसपी की तरह अधिक है, या जेएसएफ की तरह भी हो सकता है। –

+0

मैं कहूंगा कि क्लासिक मूल रूप से एएसपी जेएसपी – JohnIdol

+0

के बराबर है कोडबींड मॉडल एएसपी.नेट के साथ कम या कम Servlet संरचना के बराबर आता है जहां आप कोड के माध्यम से सबकुछ उत्पन्न कर सकते हैं। ऊपर दिया गया लिंक सूक्ष्म अंतर बताता है। लेकिन हाँ, एएसपी जेएसपी की तुलना में सबसे अच्छी है। – sangupta

2

जावा एप्लेट नहीं तो Silverlight 2.0, .NET में WPF Browser Applications करने के लिए अपने सबसे अच्छा उपमा के लिए प्रतीत होता है। इस संबंध में जावा और .NET के बीच कोई सही दर्पण नहीं है - कुछ टेक्नोलॉजी कुछ मामलों में और दूसरों के अलग-अलग मामलों में एक दूसरे के समान समान प्रतीत होते हैं। यह देखते हुए कि जावा एप्लेट के उद्देश्य से बड़े पैमाने पर विकसित किया गया था, और डेस्कटॉप अनुप्रयोगों के लिए .NET Framework, स्वाभाविक रूप से मौलिक अंतर होने जा रहे हैं। यद्यपि डब्ल्यूपीएफ ब्राउज़र एप्लिकेशन निश्चित रूप से विंडोज प्लेटफ़ॉर्म (सिल्वरलाइट के विपरीत) तक सीमित हैं, फिर भी वे शायद इस संबंध में एप्लेट्स को बहुत अधिक पसंद करते हैं कि वे अन्य चीजों के साथ संपूर्ण .NET Framework का उपयोग कर सकते हैं। इसके अलावा, जैसा कि बताया गया है, सिल्वरलाइट जावाएफएक्स के समान है।

सर्वलेट्स के संदर्भ में, बराबर प्रभावी रूप से ASP.NET के पूरे (इसके अलावा वेब अनुप्रयोग पक्ष के रूप में वेबसाइटों के खिलाफ), कि हालांकि थोड़ा अस्पष्ट किया जा रहा है। शायद अधिक सटीक, JavaServer Pages सबसे अधिक ASP.NET जैसा दिखता है (या तो उस मामले के लिए वेबफॉर्म या एमवीसी [मॉडल-व्यू-कंट्रोलर])। पूर्व (जावा) के मामले में, सामग्री को जावा सर्वलेट में संकलित किया जाता है, जबकि बाद वाले (.NET) के मामले में, सामग्री .NET असेंबली में संकलित की जाती है। वेब अनुप्रयोगों की तो शायद .NET विधानसभाओं servelets करने के लिए सबसे समान हैं - मैं चीजों की जावा पक्ष के बारे में पर्याप्त एक निष्कर्ष के बहुत बनाने के लिए पता नहीं है, हालांकि ईमानदार होना।

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

+0

.NET HttpHandlers के रूप में servlets के बारे में क्या? – JohnIdol

+0

जैसा कि किसी ने पहले से ही जोनोवा के जवाब में बताया है, मेरा मानना ​​है कि सर्वलेट फ़िल्टर HttpHandlers के समान हैं। – Noldorin

7

मैं सैंडी से सहमत हैं, ASP.Net सबसे अच्छा एक JSP (जो वास्तव में एक विशेष सर्वलेट से ज्यादा कुछ नहीं है) की तुलना में है। .NET servlet एनालॉग बेस क्लास System.Web.UI.Page प्रतीत होता है।

This sums up the comparison nicely (examples below blatantly plagiarized)

import javax.servlet.*; 
import javax.servlet.http.*; 

import java.io.*; 

public class SimpleServlet extends HttpServlet { 

    public void doGet(HttpServletRequest request, 
      HttpServletResponse response) 
      throws ServletException, java.io.IOException { 

     response.setContentType("text/html"); 
     PrintWriter out = response.getWriter(); 

     out.println("<html><body>"); 
     out.println("Simple Servlet Body"); 
     out.println("</body></html>"); 

     out.close(); 
    } 
} 
//-----------------// 
using System; 
using System.Web; 
using System.Web.UI; 

public class SimpleServlet : System.Web.UI.Page 
{ 
    private void Page_Load(object sender, EventArgs args) 
    { 
     Response.ContentType = "text/html"; 

     Response.Write("<html><body>"); 
     Response.Write("Simple Servlet Body"); 
     Response.Write("</body></html>"); 
    } 
} 
+0

+1 अच्छा उदाहरण उदाहरण के रूप में servlet को दिखा रहा है System.eb.UI.Page aspx में कोई मार्कअप नहीं है - वें ईथर के रास्ते में HttpHandler लगता है – JohnIdol

1

आप एक डेमो करने के लिए कोशिश कर रहे हैं और आप तो आप ऐसा करने में सक्षम हो सकता नेट और सर्वलेट/एप्लेट के बीच कुछ समानताएं दिखाना चाहते हैं: 1) सर्वलेट डेमो: एक .aspx फ़ाइल बनाएं जो सीधे कोडबेंड क्लास पर जाती है। ब्राउज़र का उपयोग करके, .aspx फ़ाइल को कॉल करें और कोडबेंड क्लास का जवाब दें।

मैं सर्वलेट्स को अक्सर जावास्क्रिप्ट AJAX कॉल के साथ संवाद करने के तरीके के रूप में उपयोग करता हूं, और व्यवहार के संदर्भ में कोई अंतर नहीं है, मेरे जावास्क्रिप्ट फ़ंक्शन को यह नहीं पता कि यह किस भाषा या तकनीक से संचार कर रहा है।

2) एप्लेट डेमो: यह एक थोड़ा जटिल काम के रूप में सिल्वरलाइट डिजाइन किया गया है, ऐसा लगता है, फ्लैश के साथ प्रतिस्पर्धा करने के लिए, लेकिन तुम सिर्फ एक घड़ी विजेट बनाने के लिए और एक वेब पेज पर इसे डाल सकता है, लेकिन फिर आप व्याख्या कर सकते हैं कि कुछ अच्छे डिजाइन के साथ ही ब्राउज़र के बाहर भी चलाया जा सकता है।

दोनों भाषाओं में अपने डेमो को यह दिखाने के लिए बहुत अच्छा होगा कि समस्या से संपर्क करने के कई तरीके हैं, और ऐसे व्यापार-बंद हैं जिनमें तकनीक का उपयोग करना है।

संबंधित मुद्दे