在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