.NET中Servlet和Applet的通讯记录是什么?

时间:2009-04-02 08:28:06

标签: java .net servlets applet

我试图了解.NET中servlet和applet的对应内容,但我对JAVA没有太多经验。

我认为applet可以与silverlight的东西进行比较,这意味着你可以独立于浏览器进行编码,但之后并不是这样,因为(在其他事情之间)你可以在浏览器之外重新使用applet。

我需要为基于JAVA的大学课程演示Web技术,我可以使用.NET ,只要我能演示相同的东西

任何帮助或想法表示赞赏!

5 个答案:

答案 0 :(得分:13)

在.Net中,HTTP处理程序(.ashx)可能是最接近servlet的东西。对于applet,没有直接的equivelent,但siverlight可能是最接近的(虽然它更接近Flash / JavaFX)

答案 1 :(得分:7)

我同意Sandy,ASP.Net最好与JSP相比(它实际上只不过是一个专门的servlet)。 .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>");
    }
}

答案 2 :(得分:2)

如果不是WPF Browser Applications,Java applet似乎与.NET中的Silverlight 2.0有最好的类比。在这方面,Java和.NET之间没有完美的镜像 - 某些技术在某些方面似乎彼此更相似,而在不同方面则更为相似。鉴于Java主要是为了applet而开发的,而.NET Framework是用于桌面应用程序的,因此自然会有根本的区别。虽然WPF浏览器应用程序当然仅限于Windows平台(与Silverlight不同),但它们可能更类似于applet,因为它们可以使用整个.NET Framework等。另外,正如已经指出的,Silverlight更类似于JavaFX。

就servlet而言,等效实际上是整个ASP.NET(而且是Web应用程序端而不是网站),尽管这有点模糊。也许更准确地说,JavaServer Pages最类似ASP.NET(WebForms或MVC [Model-View-Controller])。对于前者(Java),内容被编译为Java servlet,而在后者(.NET)的情况下,内容被编译为.NET程序集。因此, Web应用程序的.NET程序集最类似于servlet - 尽管说实话,我对Java方面的知识不够了解,无法得出很多结论。

有趣的是,.NET和Java的历史开始有所不同(不可否认它们都是VM框架,而Java启发了.NET),尽管如此,它们在很多方面已经随着时间的推移而融合,所以现在你几乎可以找到一个等价物在两个框架中的任何一个框架中都有技术,但通常在一个框架中有更多的开发和/或成功(Silverlight是支持Microsoft的一个例子,而applet可能支持Sun)。无论如何,希望我至少概述了两种技术的相似之处和不同之处。

答案 3 :(得分:1)

.NET中Applet的对应物是ActiveX控件。 Silverlight适用于RIA,类似于Adobe Flash运行时。

可以将Servlet与ASP.NET页面进行比较。关于他们如何比较端到端阅读MSDN上的以下文章http://msdn.microsoft.com/en-us/library/aa478987.aspx

答案 4 :(得分:1)

如果您正在尝试进行演示并希望在.NET和servlets / applet之间显示一些相似之处,那么您可以这样做: 1)Servlet演示:   创建一个直接进入codebehind类的.aspx文件。   使用浏览器调用.aspx文件并让代码隐藏类响应。

我使用servlet作为一种经常与javascript ajax通信进行通信的方式,并且在行为方面没有任何区别,我的javascript函数不知道它与之通信的语言或技术。

2)Applet演示:   这个有点棘手,因为Silverlight的设计似乎与Flash竞争,但你可以制作一个时钟小部件并将其放在网页上,但是你可以用一些好的设计来解释它可以在外面运行浏览器也是。

用两种语言进行演示只是为了进行比较,显示有多种方法可以解决问题,并且需要权衡使用哪种技术。