JavaWeb核心:HTTP&Tomcat&Servlet

Source

image-20221214173851629

HTTP

概念: Hyper Text Transfer Protocol,超文本传输协议,规定了浏览器和服务器之间数据传输的规则。

image-20221214174645112

HTTP-请求数据格式

image-20221214180459628

HTTP-响应数据格式

image-20221214194929245

响应状态码的大的分类

image-20221214195243847

常见的响应状态码

image-20221214195602598

Tomcat

简介

概念: Tomcat是Apache 软件基金会一个核心项目,是一个开源免费的轻量级Web服务器,支持Servlet/JSP少量JavaEE规范。

image-20221214201740010

image-20221214201852782

基本使用

image-20221214203135769

image-20221214203554888

部署项目

直接把项目文件拉倒tomcat的webapps文件夹中即可。

创建Maven Web项目

image-20221214215559466

IDEA中创建Maven Web项目

image-20221216115237646

image-20221216112932492

IDEA中使用Tomcat

image-20221216113208204

image-20221216122445224

Servlet

image-20221216123044203

快速入门

image-20221216163205787

Servlet执行流程

image-20221216164755581

Servlet生命周期

image-20221216170830803

//@WebServlet("/demo2")
@WebServlet(urlPatterns = "/demo2",loadOnStartup = 1)
public class ServletDemo2 implements Servlet {
    
      
    private ServletConfig servletConfig;
    /*
        初始化方法:
            1.调用时机:默认情况下,Servlet第一次被访问时调用
                用loadOnStartUp修改创建时机
            2.调用次数:一次
     */
    public void init(ServletConfig servletConfig) throws ServletException {
    
      
        this.servletConfig = servletConfig;
        System.out.println("init...");
    }

    /*
        提供服务:
         1.调用时机:每一次Servlet被访问时,调用
         2.调用次数:多次
     */
    public void service(ServletRequest servletRequest, ServletResponse servletResponse) throws ServletException, IOException {
    
      
        System.out.println("service...");
    }

    /*
        销毁方法:
         1.调用时机:内存释放或服务器关闭时,Servlet对象会被销毁,调用destory
         2.调用次数:一次
     */
    public void destroy() {
    
      

    }

    /*
        获取Servlet配置对象
     */
    public ServletConfig getServletConfig() {
    
      
        return servletConfig;
    }

    /*
        返回Servlet作者、版权、版本等信息,一般返回bull
     */
    public String getServletInfo() {
    
      
        return null;
    }
    
}

Servlet体系结构

image-20221216210300692

image-20221217154316009

Servlet urlPattern配置

image-20221217155049011

image-20221217160303842

XML配置方式编写Servlet

image-20221217160818464