JavaWeb知识核心--Servlet体系结构

体系结构

Servlet –接口

  Servlet          --接口
GenericServlet    --抽象类
HttpServlet       --抽象类

GenericServlet

里面只有一个service方法作为抽象,因为里面其他方法已经默认做了空实现
其他方法可选择性实现
1
2
3
4
5
6
7
8
9
10
11
12
13
14
package com.web.servlet;

import javax.servlet.GenericServlet;
import javax.servlet.ServletException;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;
import java.io.IOException;

public class ServletDemo2 extends GenericServlet {
@Override
public void service(ServletRequest servletRequest, ServletResponse servletResponse) throws ServletException, IOException {

}
}

HttpServlet

在这里插入图片描述

因为要判断get和post方式,很麻烦,因此sun公司帮我们实现了这个判断-HttpServlet
HttpServlet:对http协议的封装,简化操作

步骤

  1. 定义类继承HttpServlet
  2. 复写doGet() / doPost()方法
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
package com.web.servlet;

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(urlPatterns = "/s3")
public class ServletDemo3 extends HttpServlet {
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
System.out.println("doget...");
}

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

Servlet相关配置

urlpartten

  1. Servlet访问路径
    注解里面可以定义多个路径
    @WebServlet(urlPatterns = {“/s3”,”/s31”,”/s32”})

  2. 路径定义规则

    1.   /xxx
    2.   /xxx/xxx   :多层路径,目录结构
            @WebServlet(urlPatterns = "/user/s1")
            @WebServlet(urlPatterns = "/user/*")
            @WebServlet(urlPatterns = "/*")
            //*代表任意路径,通配符
    3.   *.do
            @WebServlet(urlPatterns = "*.do")
            // 路劲前面不能加/,否则报错,访问为xxx.do
            //后缀名可以为任意的
文章目录
  1. 1. Servlet –接口
    1. 1.1. GenericServlet
  2. 2. HttpServlet
    1. 2.1. 步骤
  3. 3. Servlet相关配置
    1. 3.1. urlpartten
,