美文网首页
【javaweb三大组件】

【javaweb三大组件】

作者: giraffecode9668 | 来源:发表于2020-07-06 17:32 被阅读0次

一、Listener监听器

1、概述

Listener是JavaEE的规范(接口)
作用:监听某种事物的变化,通过回调函数,反馈给客户(程序)去做一些响应的处理。

2、使用

ServletContextListener监听器
它监听ServletContext对象的创建和销毁。当创建和销毁时调用方法contextInitializedcontextDestroyed

使用步骤:
1、编写实现类,实现方法
2、web.xml配置Listener

<listener>
    <listener-class>xxx</listener-class>
</listener>

二、Filter过滤器

1、概述

Listener是JavaEE的规范(接口)
作用:拦截请求,过滤响应
拦截请求场景:

  • 权限检查
  • 日记操作
  • 事务管理

2、使用

使用步骤:
1、编写实现类实现接口Filter,实现doFilter方法
2、web.xml配置filter和filter-mapping

<filter>
    <filter-name>filterName</filter-name>
    <filter-class>xxx</filter-class>
</filter>
<filter-mapping>
    <filter-name>filterName</filter-name>
    <url-pattern>/</url-pattern>
</>

3、Filter生命周期

1、构造器方法
2、init初始化方法
    1/2步,在web启动的时候执行(Filter已经创建)
3、doFilter过滤方法
    每次拦截请求,执行一次
4、destroy销毁方法
    停止web,执行(销毁Filter对象)

4、FilterConfig类

Filter过滤器的配置文件类
每次创建Filter的时候,也会同时创建一个FilterConfig类,这里包含了Filter配置文件的配置信息

FilterConfig类的作用是获取filter过滤器的配置内容
1、获取Filter的名称filter-name的内容:.getFilterName()
2、获取在Filter中配置的init-param初始化参数.getInitParameter("")
3、获取ServletContext对象:.getServletContext()

5、FilterChain类

image.png

6、Filter的拦截路径

  • 精确匹配/xxx.html
  • 目录匹配/*
  • 后缀名匹配*.html(不能以/开头)

三、Servlet

1、概述

规范(接口)
是运行在服务器上的一个java小程序。可以接收客户端发送过来的请求,并响应数据给客户端

2、实现

1、编写实现Servlet接口
2、实现service方法,处理请求,响应数据(service方法专门用来处理请求和响应的)
3、到web.xml中配置servlet程序的访问地址

<servlet>
    <servlet-name>ServletName</servlet-name>
    <servlet-class>xxx</servlet-class>
</servlet>

<servlet-mapping>
    <servlet-name>ServletName</servlet-name>
    <url-pattern>/xxx</url-pattern>
</servlet-mapping>

3、url访问过程

image.png

4、Servlet的生命周期

1、servlet构造器方法
2、init初始化方法
    - 1/2在第一次访问,调用
3、service方法
    - 每次访问调用一次
4、destroy销毁方法
    - 停止web调用

继承HttpServlet
重写doGet(doPost)方法

5、ServletConfig

Servlet程序和ServletConfig对象都是由Tomcat负责创建,我们负责使用。
Servlet程序默认是第一次访问的时候创建,ServletConfig是每个Servlet程序创建时,就创建一个对应的ServletConfig对象。

作用:

  • 可以获取Servlet程序的别名servlet-name的值.getServletName()
  • 获取初始化值init-param.getInitParameter("")
  • 获取ServletContext对象.getServletContext()

获取Config:getServletConfig()
初始化Config:在初始方法中保存config

6、ServletContext

接口,表示Servlet上下文对象
一个web工程,只有一个ServletCOntext对象实例
是一个域对象
ServletContext在Web启动创建,停止销毁

作用:

  • 获取web.xml中配置的上下文参数context-param
.getInitParameter("");

<context-param>
    <param-name>xxx</param-name>
    <param-value>xxx</param-value>
</context-param>
  • 获取当前的工程路径,格式:/工程路径
    .getContextPath()
  • 获取工程部署后在服务器硬盘上的绝对路径
    .getRealPath("/")
  • 像Map一样存取数据
.setAttribute("","");
.getAttribute("");

相关文章

  • Servlet、Filter、Listener

    JavaWeb三大组件指的是:Servlet、Filter、Listener,这三个组件在JavaWeb开发中分别...

  • JavaWeb三大组件(Servlet、Filter、Liste

    JavaWeb三大组件指的是:Servlet、Filter、Listener,这三个组件在JavaWeb开发中分别...

  • JavaWeb三大组件之过滤器(Filter)

    title: JavaWeb三大组件之过滤器(Filter)tags: JavaWeb 过滤器categories...

  • JavaWeb三大组件之监听器(Listener)

    title: JavaWeb三大组件之监听器(Listener)tags: JavaWeb 监听器categori...

  • javaee 02 servlet

    servlet 是javaWeb 三大组件之一(Servlet,Filter,Listener)servlet 的...

  • Servlet

    一.Servlet概述 Servlet是JavaWeb的三大组件之一,它属于动态资源。三大组件:Servlet,f...

  • Javaweb组件--Listener

    监听器就是实现特定接口的Java类,这个类专门用于监听另一个Java对象的方法调用或者属性改变,当监听对象发生上述...

  • Javaweb组件--Servlet

    今天要学习的是Javaweb的三大组件:Servlet 因为框架(包括Spring Boot)本质上是对原始的Ja...

  • Javaweb组件--Filter

    今天讲的是Javaweb的三大组件之:Filter Filter ,过滤器,主要是对web服务器管理的所有web资...

  • Servlet

    JavaWeb三大组件 ​ Servlet,Filter,Listener 路径匹配优先级 ​ 完全匹配路...

网友评论

      本文标题:【javaweb三大组件】

      本文链接:https://www.haomeiwen.com/subject/ehxtfktx.html