在Java中,Applet和Servlet都是在Java环境中运行的程序或应用程序。这两个程序的主要区别在于它们的处理是在不同的环境中完成的。
以下是Applet和Servlet之间的重要区别。
| 序号 | 键 | Applet | Servlet |
|---|---|---|---|
| 1 | 执行 | Applet在客户端执行,即Applet在客户端计算机上的Web浏览器中运行。 | 另一方面,Servlet在服务器端执行,即Servlet在服务器上的Web页上运行。 |
| 2 | 父包 | Applet 的父包包括 java.Applet. * 和 java.awt. * | Servlet的父包包括javax.servlet。*和java.servlet.http。* |
| 3 | 方法 | Applet重要的方法包括init(),stop(),paint(),start(),destroy()。 | Servlet的生命周期方法是init(),service()和destroy()。 |
| 4 | 用户界面 | 为了执行Applet,需要用户界面,例如AWT或swing。 | Servlet的执行不需要这样的界面。 |
| 5 | 所需带宽 | Applet需要客户端计算机上的用户接口才能执行,因此需要更多带宽。 | 另一方面,Servlet在服务器上执行,因此需要较少的带宽。 |
| 6 | 安全 | 当执行在客户机机器上时,applet更容易发生风险。 | 由于执行是在服务器安全性之下的,因此Servlet更安全。 |
AppletDemo.java
import java.applet.Applet;
import java.awt.Graphics;
public class AppletDemo extends Applet {
// Overriding paint() method
@Override
public void paint(Graphics g){
g.drawString("AppletDemo", 20, 20);
}
}输出结果
AppletDemo
ServletDemo.java
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
public class ServletDemo extends HttpServlet {
private String message;
public void init() throws ServletException{
//进行必要的初始化
message = "Servlet Demo";
}
public void doGet(HttpServletRequest request,HttpServletResponse response) throws ServletException, IOException{
response.setContentType("text/html");
PrintWriter out = response.getWriter();
out.println(message);
}
}输出结果
Servlet Demo