Servlet系列之第三种创建方式(三)--实现HttpServlet类

package servlet;

import javax.servlet.ServletContext;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;


/**
 * Created by dllo on 17/6/19.
 */


    //当服务器访问Servlet时,会先创建该Servlet对象
    //然后调用该对象的init(config)方法
    //init(config)方法中又会调用非生命周期的init()方法
    //当Servlet被请求时
    //会调用生命周期的service(sreq,srsp)方法
    //在该方法中 会调用非生命周期的service(sreq, srsp)方法
    //在非生命周期的service中,会根据请求当时,选择要调用那个do方法
    //如果请求方式为get:那么调用doGet();
    //如果请求方式为post:那么调用doPost();
public class ThirdServlet extends HttpServlet {

//    @Override
//    public void init(ServletConfig config) throws ServletException {
//        //super.init(config)方法
//        //就会调用GenericServlet父类中的init(config)方法
//        super.init(config);
//    }

    @Override
    public void init() throws ServletException {
        //servlet的上下文对象
        //实际上就是一个装载多个Servlet集合
        ServletContext servletContext = getServletContext();
        servletContext.setAttribute("name", "张三");
    }

    @Override
    protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
       String age = req.getParameter("age");

        System.out.println("doget---------"+age);
    }

    @Override
    protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
     String age = req.getParameter("age");
        String t = req.getParameter("t");
        System.out.println("dopost-------------"+age);
        System.out.println("doPost-----"+t);
    }
}

你可能感兴趣的:(Servlet)