📜  Applet 和 Servlet 的区别

📅  最后修改于: 2022-05-13 01:55:44.686000             🧑  作者: Mango

Applet 和 Servlet 的区别

先决条件: Servlet 和 Applet

AppletsServlets
A Java applet is a small application which is written in Java and delivered to users in the form of bytecode.A servlet is a Java programming language class used to extend the capabilities of a server.
Applets are executed on client side.Servlets are executed on server side.
Applets are used to provide interactive features to web applications that cannot be provided by HTML alone like capture mouse input etc.Servlets are the Java counterpart to other dynamic Web content technologies such as PHP and ASP.NET.
Life cycle of Applets init(), stop(), paint(), start(), destroy().Lifecycle of servlets are:- init( ), service( ), and destroy( ).
Packages available in Applets are :- import java.applet.*; and import java.awt.*.Packages available in servlets are:- import javax.servlet.*; and import java.servlet.http.*;
Applets use user interface classes like AWT and Swing.No User interface required.
Applets are more prone to risk as it is on the client machine.Servlets are under the server security.
Applets utilize more network bandwidth as it executes on the client machine.Servlets are executed on the servers and hence require less bandwidth.
Requires java compatible browser for execution.It accepts input from browser and generates response in the form of HTML Page, Javascript Object, Applets etc.

例子

  • 创建“hello world”小程序。
    // A Hello World Applet
    // Save file as HelloWorld.java
      
    import java.applet.Applet;
    import java.awt.Graphics;
      
    // HelloWorld class extends Applet
    public class HelloWorld extends Applet {
      
        // Overriding paint() method
        @Override
        public void paint(Graphics g)
        {
            g.drawString("Hello World", 20, 20);
        }
    }
    
  • 创建“hello world”Servlet。
    // Import required java libraries
    import java.io.*;
    import javax.servlet.*;
    import javax.servlet.http.*;
      
    // Extend HttpServlet class
    public class HelloWorld extends HttpServlet {
      
        private String message;
      
        public void init() throws ServletException
        {
            // Do required initialization
            message = "Hello World";
        }
      
        public void doGet(HttpServletRequest request,
                          HttpServletResponse response)
            throws ServletException, IOException
        {
      
            // Set response content type
            response.setContentType("text/html");
      
            // Actual logic goes here.
            PrintWriter out = response.getWriter();
            out.println("

    " + message + "

    ");     }        public void destroy()     {         // do nothing.     } }