Mrcdh技术博客 Mrcdh技术博客
首页
  • Html5
  • Javascript
  • Nodejs
  • Android
  • 微信公众号
  • 框架
  • Mysql
  • PHP
  • Python
  • Gulp
  • 其它
  • 网站
  • 资源
  • Vue资源
  • 分类
  • 标签
  • 归档
GitHub (opens new window)

Mrcdh

立志于全桟开发
首页
  • Html5
  • Javascript
  • Nodejs
  • Android
  • 微信公众号
  • 框架
  • Mysql
  • PHP
  • Python
  • Gulp
  • 其它
  • 网站
  • 资源
  • Vue资源
  • 分类
  • 标签
  • 归档
GitHub (opens new window)
  • Mysql

  • PHP

  • Python

  • java

    • java基础

    • java常用插件

    • spring

    • servlet

      • servlet基础
        • 导入Servlet依赖
        • 基本使用
        • Servlet生命周期
        • HttpServlet
        • Servlet urlPattern配置
    • IDEA基本使用
  • Go

  • ElasticSearch

  • Git

  • Gulp

  • 钉钉开发

  • 其它

  • 技术
  • java
  • servlet
mrcdh
2022-06-15
目录

servlet基础

# 导入Servlet依赖

<dependency>
    <groupId>javax.servlet</groupId>
    <artifactId>javax.servlet-api</artifactId>
    <version>3.0.0</version>
    <scope>provided</scope><!--必须,依赖范围-->
</dependency>
1
2
3
4
5
6

# 基本使用


// 2.使用@WebServlet注解配置该servlet的访问路径
@WebServlet("/demo")
// 1.创建一个类实现 Servlet 接口,并重写改接口所有方法,并在service中输入一句话
public class ServletDemo implements Servlet{
    @Override
    public void init(ServletConfig servletConfig) throws ServletException {
        // 初始化方法,在Servlet被创建时执行,只执行一次
    }

    // 获取ServletConfig对象
    @Override
    public ServletConfig getServletConfig() {
        return null;
    }

    // 提供服务方法,每次Servlet被访问,都会调用该方法
    @Override
    public void service(ServletRequest servletRequest, ServletResponse servletResponse) throws ServletException, IOException {
        // 3.输出
        System.out.println("servlet 访问了");
    }

    // 获取ServletConfig信息
    @Override
    public String getServletInfo() {
        return null;
    }

    @Override
    public void destroy() {
        // 销毁方法,当Servlet被销毁时,调用该方法,在内存释放或服务器关闭时销毁Servlet
    }

}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35

访问:http://localhost:8080/demo

# Servlet生命周期

  1. 加载和实例化:默认情况下,当Servlet第一次被访问时,由容器创建Servlet对象,或者在配置注解时设置 @WebServlet("/demo", loadOnStartup=1),默认为负整数(第一次访问时创建),0或正整数(服务器启动时创建,数字越小优先级越高,用给哪些启动耗时的)
  2. 初始化:在Servlet实例化后,将调用Servlet的init()方法初始化这个对象,完成一些加载配置文件、创建连接等初始化的工作,该方法只调用一次。
  3. 请求处理:每次请求Serlevt时都会调用Servlet的service()方法对请求进行处理。
  4. 服务中止:当需要释放内存或者容器关闭时,容器就会调用Servlet的destroy()方法完成资源的释放。

# HttpServlet

正常使用的时候,继承HttpServlet

# Servlet urlPattern配置

Serlevt要想被访问,必须配置其访问路径urlPattern

  1. 一个Servlet可以配置多个urlPattern:@WebServlet(urlPattern={"/demo1", "/demo2"})
  2. urlPattern配置规则
    • 精确匹配
      • @WebServlet(urlPattern="/user/select"): localhost/user/select
    • 目录匹配
      • @WebServlet(urlPattern="/user/*"): localhost/user/select,localhost/user/change
    • 扩展名匹配
      • @WebServlet(urlPattern="*.do"): localhost/select.do,localhost/change.do
    • 任意匹配
      • @WebServlet(urlPattern="/"): localhost/select,localhost/change/aa
      • @WebServlet(urlPattern="/*"): localhost/select,localhost/change/bb
#java#servlet
上次更新: 2022/06/16, 11:06:00
SpringBoot基本使用
IDEA基本使用

← SpringBoot基本使用 IDEA基本使用→

最近更新
01
SpringBoot基本使用
07-25
02
pinia持久化插件pinia-plugin-persist的使用
07-25
03
h5操作媒体设备(音频和视频)
07-21
更多文章>
Theme by Vdoing | Copyright © 2020-2022 Mrcdh | 苏ICP备2020058908号-1
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式