servlet的执行顺序

执行的时候Tomcat先初始化 然后调用 server 根据server来回调请求方式下面会追入源码解释

package com.haogu.servlet;


import javax.servlet.ServletConfig;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;

@WebServlet(value = {"/hello","/hello2"},loadOnStartup = 1)
public class HelloServlet extends HttpServlet {



    /**
     * 1.查看源码的方式
     *   1.1 查看HttpServlet数据类型  abstract class
     *   1.2 继承之后查看是否有必须实现的抽象方法  HttpServlet 没有抽象方法
     *   1.3 查看继承关系
     *         Servlet, ServletConfig, Serializable
     *   1.4 查看里面的常量、变量
     *       看完源码知道 七种提交方式 DELETE HEAD GET POST PUT TRACE OPTIONS
     *   1.5 查看里面的方法
     *       service 接受所有的方法,然后根据发送过来的请求分发到对应的方法里面
     *       init 初始化方法  只会初始化一次
     *       destroy 销毁方法
     *
     *      HttpServlet生命周期
     *      1.构造器 ,init初始化 init初始化配置文件
     *      2.每次接受到请求的时候tomcat都会先使用servlet里面的service方法
     *      3.service方法会根据请求方式分发到不同的对应方法里面
     *      4.当服务器关闭的时候会销毁对象,会执行destroy方法
     *
     *
     *
     *      http://localhost:8080/hello?user=admin&pwd=123
     *      协议://ip地址:端口号/资源路径?参数1 = 参数值1 & 参数2 = 参数值2
     *
     *      web项目的工程目录
     *      src : 放置java文件的
     *      web:放置前端页面\ CSS \ JS
     *          WEB-INF:
     *              放置内部资源的:用户无法直接访问
     *
     * */

    public HelloServlet() {
        System.out.println("1.------------------------本身的构造器");
    }


    @Override
    public void init() throws ServletException {
        System.out.println("2.------------------------init初始化");
    }


    @Override
    public void init(ServletConfig config) throws ServletException {
        System.out.println("2.------------------------init初始化config");
    }


    @Override
    protected void service(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        System.out.println("3.------------------------service");
        this.doGet(req, resp);
    }

    @Override
    protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        System.out.println("4.------------------------doGet");
    }

    @Override
    public void destroy() {
        System.out.println("5.------------------------destroy");
    }
}

追入继承的Httpservlet找到service方法 根据和这个方法来进行方法的回调。

 如果想要你的web前端输入的数据传入数据库,要把导入的jar包放置在web目录下的WEB-INF文件下,否则会报错

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值