📜  从第一个 Servlet 应用程序开始

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

从第一个 Servlet 应用程序开始

要开始使用 Servlet,让我们首先从一个简单的 Servlet 应用程序开始,LifeCycle应用程序,它将演示init()service()destroy()方法的实现。
首先,重要的是要了解,如果我们正在开发任何 Servlet 应用程序,它将处理一些客户端的请求,因此,每当我们谈论 Servlet 时,我们需要开发一个 index.html 页面(也可以是任何其他名称),它将请求一个特定的 Servlet 来处理客户端发出的请求(在本例中为 index.html 页面)。
为简单起见,让我们先描述开发LifeCycle应用程序的步骤:

  • 创建 index.html 页面
  • 创建生命周期Servlet
  • 创建部署描述符

创建 index.html 页面

为了简单起见,这个页面将只有一个按钮调用生命周期。当您单击此按钮时,它将调用LifeCycleServlet (根据 web.xml 文件中的条目映射)。

HTML

    
             


Java
// importing the javax.servlet package
// importing java.io package for PrintWriter
import javax.servlet.*;
import java.io.*;
 
// now creating a servlet by implementing Servlet interface
public class LifeCycleServlet implements Servlet {
 
    ServletConfig config = null;
 
    // init method
    public void init(ServletConfig sc)
    {
        config = sc;
        System.out.println("in init");
    }
 
    // service method
    public void service(ServletRequest req, ServletResponse res)
        throws ServletException, IOException
    {
        res.setContenttype("text/html");
        PrintWriter pw = res.getWriter();
        pw.println("

hello from life cycle servlet

");         System.out.println("in service");     }       // destroy method     public void destroy()     {         System.out.println("in destroy");     }     public String getServletInfo()     {         return "LifeCycleServlet";     }     public ServletConfig getServletConfig()     {         return config; // getServletConfig     } }


XML


    
         LifeCycleServlet
         LifeCycleServlet
    
    
         LifeCycleServlet
         /LifeCycleServlet
    
    
         
             30
         


Servlet 的名称在表单标记的 action 属性中给出,单击按钮时将向其发送请求,在本例中为FirstServlet

创建 Servlet (FirstServlet)

现在,是时候创建 LifeCycleServlet 了,它实现了init()service()destroy()方法来展示 Servlet 的生命周期。

Java

// importing the javax.servlet package
// importing java.io package for PrintWriter
import javax.servlet.*;
import java.io.*;
 
// now creating a servlet by implementing Servlet interface
public class LifeCycleServlet implements Servlet {
 
    ServletConfig config = null;
 
    // init method
    public void init(ServletConfig sc)
    {
        config = sc;
        System.out.println("in init");
    }
 
    // service method
    public void service(ServletRequest req, ServletResponse res)
        throws ServletException, IOException
    {
        res.setContenttype("text/html");
        PrintWriter pw = res.getWriter();
        pw.println("

hello from life cycle servlet

");         System.out.println("in service");     }       // destroy method     public void destroy()     {         System.out.println("in destroy");     }     public String getServletInfo()     {         return "LifeCycleServlet";     }     public ServletConfig getServletConfig()     {         return config; // getServletConfig     } }

创建部署描述符(web.xml)

正如其他关于web.xml文件的文章中所讨论的那样,我们将在本文中继续创建它。

XML



    
         LifeCycleServlet
         LifeCycleServlet
    
    
         LifeCycleServlet
         /LifeCycleServlet
    
    
         
             30
         

要了解上述web.xml文件的工作和使用,建议阅读下一篇文章。

如何运行上述程序?

确保您安装了一些服务器(例如Apache Tomcat )并使用您选择的 IDE(例如 Netbeans)进行了配置,这一点很重要。
现在,如果满足上述条件,那么您可以简单地在Web 应用程序项目下创建上述三个文件,然后简单地运行上述应用程序。
首先执行index.html文件,然后当单击按钮时请求转到 Servlet,在这种情况下 LifeCycleServlet 和 service() 方法处理请求。

当点击上面的调用生命周期 servlet按钮时,LifeCycleServlet 的 service() 方法下的代码被执行,得到如下输出: