servlet对象

servlet的生命周期


可以被定义为servlet对象从创建到销毁的整个过程:
1)在创建servlet对象时,通过调用init()方法进行初始化
2)通过service()方法来处理客户端的请求,根据请求方式的不同转发给doGet()或doPost()方法
3)停止服务时,通过调用destory()方法销毁servlet对象
4)servlet对象被JVM垃圾回收器回收

public void init() throws ServletException {
        /* 初始化方法\
         * 1 只会调用一次
         * 2 在创建servlet对象时调用,在后续每次用户请求时不再调用 */

protected void service(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        /* service()方法,是执行实际业务的主要方法,由servlet的对象的容器调用service方法
         * 作用:处理来自客户端的请求,并把格式化的响应写回给客户端
         * 1 service()方法由容器调用
         * 2 service()方法回检查HTTP请求类型, */


protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        /*
         * HttpServletRequest,接收HTTP请求,
         * 提供了一系列的方法来:
         * 1 接收HTTP头信息、cookies
         * 2 获取HTTP请求参数
         * 3 设置HTTP请求编码
         * 4 获取HTTP的请求方式GET/POST
         */
        
        System.out.println("接受HTTP的GET方式请求");
        req.setAttribute("name", "张三");
        //请求转发:通过请求转跳转到JSP页面
        req.getRequestDispatcher("/WEB-INF/page/demo.jsp").forward(req, resp);
    }

public void destroy() {
        /* 销毁servlet对象
         * 1 destroy方法只调用一次,在servlet对象生命周期结束时被调用
         * 2 destroy方法可以关闭数据库链接,停止后台线程,把cookie或者缓存写入硬盘以及其他清理活动
         * 3 在调用destroy方法后,servlet对象会被Gc线程标记为被回收的资源 */
 

上一篇:Could not transfer artifact XXXX from/to maven-default-http-blocker (http://0.0.0.0/)


下一篇:axios请求配置