Servlet 生命周期指的是一个 Servlet 从被加载到被销毁的整个过程,由 Servlet 容器(如 Tomcat) 负责管理。理解生命周期有助于掌握 Servlet 的初始化、请求处理和资源释放时机。
Servlet 生命周期一般包括以下几个阶段:
init()public void init(ServletConfig config) throws ServletException
若
init()抛异常,Servlet 不会被投入使用
service()public void service(ServletRequest req, ServletResponse res)
service()doGet() / doPost() 等特点:
destroy()public void destroy()
容器启动 / 首次请求
↓
加载 Servlet 类
↓
创建 Servlet 实例
↓
调用 init()
↓
多次调用 service()(处理请求)
↓
容器关闭 / 卸载
↓
调用 destroy()
public class HelloServlet extends HttpServlet {
@Override
public void init() throws ServletException {
System.out.println("Servlet 初始化");
}
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp)
throws IOException {
resp.getWriter().write("Hello Servlet");
}
@Override
public void destroy() {
System.out.println("Servlet 销毁");
}
}
init() 和 destroy() 只执行一次init(),释放放在 destroy()如果你愿意,我也可以对比 Servlet 与 Spring MVC / Filter 的生命周期,或者画一张更直观的时序图。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。