zoukankan      html  css  js  c++  java
  • java EE :Servlet 接口

    Servlet 生命周期  :

    • 调用当前 Servlet 类构造函数进行实例化
    • Servlet 通过调用 init () 方法进行初始化
    • Servlet 调用 service() 方法来处理客户端的请求
    • Servlet 通过调用 destroy() 方法终止(结束)
    • 最后,Servlet 是由 JVM 的垃圾回收器进行垃圾回收的

    Servlet 是服务 HTTP 请求并实现 javax.servlet.Servlet 接口的 Java 类。Web 应用程序开发人员通常编写 Servlet 来扩展 javax.servlet.http.HttpServlet,并实现 Servlet 接口的抽象类专门用来处理 HTTP 请求。( javax.servlet.Servlet 接口、java.servlet.GenericSerlvet 抽象类、java.servlet.Http.HttpServlet 抽象类)

    package javax.servlet;
    
    import java.io.IOException;
    
    public interface Servlet {

    //Servlet 实例初始化完成后 (Servlet 为单实例,仅包含一个实例),将进入 init 函数,并且只执行一次
    void init(ServletConfig var1) throws ServletException;
    // 获取 ServletConfig 对象,该对象包括当前 Servlet 实例相关信息 ServletConfig getServletConfig();
    //任何一次请求,都将进入 service 方法
    void service(ServletRequest var1, ServletResponse var2) throws ServletException, IOException; String getServletInfo();
    // 当 tomacat 关闭时,将执行该方法
    void destroy(); }
    ServletDemo 类实现 java.servlet.Servlet 接口:
    import javax.servlet.*;
    import java.io.IOException;
    
    public class ServletDemo implements Servlet {
    
        private transient ServletConfig servletConfig;
    
        public ServletDemo() {
            System.out.println("constructor");
            System.out.println(this.hashCode());
        }
    
        @Override
        public void init(ServletConfig servletConfig) throws ServletException {
            this.servletConfig = servletConfig;
            System.out.println("init");
        }
    
        @Override
        public ServletConfig getServletConfig() {
            return this.servletConfig;
        }
    
        @Override
        public void service(ServletRequest servletRequest, ServletResponse servletResponse) throws ServletException, IOException {
            System.out.println(this.hashCode());
        }
    
        @Override
        public String getServletInfo() {
            return null;
        }
    
        @Override
        public void destroy() {
            System.out.println("destroy");
        }
    }
  • 相关阅读:
    Air Raid HDU
    Strategic Game HDU
    Antenna Placement POJ
    Load Testing CodeForces
    Packmen CodeForces
    Codeforces Round #441 (Div. 2, by Moscow Team Olympiad)
    Codeforces Round #440 (Div. 2, based on Technocup 2018 Elimination Round 2)
    Dog Show CodeForces
    Sum of Nestings CodeForces
    Preparing for Merge Sort CodeForces
  • 原文地址:https://www.cnblogs.com/Lumia1020/p/9803713.html
Copyright © 2011-2022 走看看