一、JavaWeb三大组件

Servlet,Listener,Filter.它们在JavaWeb开发中分别提供不同的功能.

JavaWeb三大组件都必须在Web.xml中配置

二、三大组件

1、Servlet

Servlet的作用是处理请求,服务器会把接收到的请求交给Servlet来处理,在Servlet中通常需要:

Tomcat服务器会帮助我们将请求的数据封装在request对象

Tomcat同样会创建respose对象给我们使用,让我们响应 HttpServletRequest extends ServletRequest

广义上说,servlet是运行在web服务器或应用服务器的程序,用来处理客户端请求的动态资源.Servlet = Service + Applet,表示小服务程序。狭义上来说,狭义的Servlet是指Java语言实现的一个接口,该接口有一个实现类为GenericServlet,该实现类有一个子类为HttpServlet,而我们实际开发中用的比较多的,就是我们通过根据具体的业务需求而继承HttpServlet来创建的servlet. servlet是单例设计模式

实现Servlet:

实现Servlet有三种方式:

1.实现javax.servlet.Servlet接口;

2.继承javax.servlet.GenericServlet类;

3.继承javax.servlet.http.HttpServlet类;

<servlet>

<description></description>

<display-name>servlet名称</display-name>

<servlet-name>servlet名称</servlet-name>

<servlet-class>servlet的全限定名,即包含了包名了的</servlet-class>

</servlet>

<servlet-mapping>

<servlet-name>servlet名称</servlet-name>

<url-pattern>匹配路径,例如/addServlet</url-pattern>

</servlet-mapping>

二、监听器:

监听器就是一个实现了特定接口的java类,这个java类用来监听另外一个java类的方法调用或者属性改变,当被监听的对象发生上述事件后,监听器的某个方法就会立即执行.这里就涉及几个相关概念:

  事件源:被监听的对象

  事件:就是事件源的改变,一旦发生变化,事件就会传递给监听器对象,监听器的对应方法就会执行  

  监听器:监听的对象

  绑定监听器:在事件上绑定监听器

监听器分类:

  在servlet的规范中定义了多种类型的监听器,主要用来监听ServletContext,HttpSession,ServletReques三个域对象.按照功能划分,可以分成三类:

  • 一类:监听三个域对象的创建和销毁的监听器
  • 二类:监听三个域对象的属性变更的监听器(xxxAttribute())
  • 三类:监听HttpSession对象中的JavaBean的状态的改变.(绑定,解除绑定,钝化,活化) 

三、Filter

filer是javaweb中的过滤器 ,也有三个生命周期方法,同时在web.xml的配置也差不多.但是两者的主要功能不同,servlet负责处理请求,filter负责拦截请求和放行.可以实现Url级别的权限访问,敏感词汇过滤,解决编码问题等等.

(太忙了,毕业论文还有很多没写,快答辩了,待更新。。。。。。)

JavaWeb三大组件的更多相关文章

  1. 学习笔记_过滤器概述(过滤器JavaWeb三大组件之一)

    过滤器Filter Filter和Lister是Servlet规范里的两个高级特性.不同于Servlet,它们不用于处理客户端请求,只用于对request.response进行修改或者对context ...

  2. JavaWeb三大组件(Servlet,Filter,Listener 自己整理,初学者可以借鉴一下)

    JavaWeb三大组件(Servlet,Filter,Listener 自己整理,初学者可以借鉴一下) Reference

  3. 转-JavaWeb三大组件之Listener监听器

    JavaWeb三大组件之Listener监听器一.概述1,它是一个接口,内容由我们来实现 2,它需要注册,例如注册在按钮上 3,监听器中的方法,会在特殊事件发生时被调用 二.JavaWeb中的监听器1 ...

  4. JavaWeb三大组件(Servlet、Filter、Listener)

    JavaWeb三大组件指的是:Servlet.Filter.Listener,这三个组件在JavaWeb开发中分别提供不同的功能,然而很多人可能只用过其中一个或者两个(Servlet.Filter,比 ...

  5. JavaWeb三大组件—过滤器filter

    JavaWeb三大组件 1. 都需要在web.xml中进行配置ServletListener(2个感知监听器不需要配置)Filter 2. 过滤器 它会在一组资源(jsp.servlet..css.. ...

  6. Filter过滤器-JavaWeb三大组件之一

    Servlet.Filter.Listener是JavaWeb的三大组件,给Web开发提供了很大的便利. 什么是Filter? Filter,过滤器.类似与生活中的净水器.空气净化器. JavaWeb ...

  7. Javaweb三大组件-过滤器、监听器

    1. 过滤器 [filter] 作用: 对单个获取多个servlet起到增强[advice]的作用. 用于在所有的servlet执行前,做一些预处理.例如:做编码处理, 访问量统计[servletCo ...

  8. JavaWeb三大组件之一Filter知识总结

    [1] Filter简介    > Filter翻译为中文是过滤器的意思.    > Filter是JavaWeb的三大web组件之一Servlet.Filter.Listener    ...

  9. JavaWeb三大组件——过滤器的运行机制理解

    过滤器Filter 文章前言:本文侧重实用和理解. 一.过滤器的概念. lFilter也称之为过滤器,它是Servlet技术中最实用的技术,WEB开发人员通过Filter技术,对web服务器管理的所有 ...

随机推荐

  1. hive高级数据类型

    hive的高级数据类型主要包括:数组类型.map类型.结构体类型.集合类型,以下将分别详细介绍. 1)数组类型 array_type:array<data_type> -- 建表语句 cr ...

  2. [strongswan] strongswan是如何实现与xfrm之间的trap机制的

    目录 strongswan与xfrm之间的trap机制 0. 1. 前言 2. 描述 2.1 none 2.2 trap 3. 实验与过程 3.1 trap实验 3.2 none实验 4 背景知识 5 ...

  3. sqlmap常用渗透方法

    0X001 适用场景 1.获取了Mysql数据库root账号以及密码. 2.可以访问3306端口以及数据库. 0X002 扫描获取root账号的密码 通常有下面一些方法来获取root账号的密码 (1) ...

  4. VS2017 SVN插件-AnkhSVN

    AnkhSVN 该插件可以直接在vs017扩展和工具里安装,安装完成即可使用 默认VS自带的源码管理工具是GIT 如果已经使用需要手动切换到SVN:工具==>选项菜单中设置 SVN使用方法: 1 ...

  5. tomcat之性能优化

    tomcat是我们常用的web容器,它的性能高低直接影响到应用对外提供服务的能力和用户的体验,所以tomcat的优化至关重要.对于单台tomcat服务器而言,优化主要是两方面:内存优化和配置优化(例如 ...

  6. HtmlFilter实现Html标签转义过滤器

    HtmlUrlFilter: import java.io.IOException; import javax.servlet.Filter; import javax.servlet.FilterC ...

  7. 关于windows 7 安装Django和基本使用命令

    一.安装 在安装前需注意Django 1.6以前的版本不支持python 3.×以上的版本. Django 2.×支持python 3.6 安装方法:打开cmd->输入pip install - ...

  8. 建立live555海思编码推流服务

    因项目需要,这一周弄了一下live555.需求:海思编码——>RTSP server,使用VLC可以访问,类似于网络摄像机的需求.看了一下,live555的架构太复杂了,半桶水的C++水平还真的 ...

  9. Mysql笔试题

    1.查询Student表中的所有记录的Sname.Ssex和Class列. SELECT Sname,Ssex,Class FROM Students; 2.查询教师所有的单位即不重复的Depart列 ...

  10. Python字符串常用方法(二)

    二.字符串的操作常用方法 字符串的替换.删除.截取.复制.连接.比较.查找.分割等 1. string. lower() :转小写 2. string. upper() :转大写 3. string. ...