组件 | 作用 | 实现接口 |
Servlet | Java中的一个小程序应用,在javaweb中主要作为控制器使用,可以处理请求和响应 | javax.servlet.Servlet |
Filter | 对发送的请求或者响应进行集中处理,如:spring框架会用到 | javax.servlet.Filter |
Listener | 一些框架会用到监听器,如:spring,在web执行过程中国,引发一些事件,针对事件做处理 | javax.servlet.XxxListener |
一、Servlet
(1) Servlet的概念
是一个 Java 写的小应用程序,运行在 Web 容器中,处理用户的请求,并且做出响应。
(2) Servlet与普通java程序的区别
- 普通的 Java 程序由 main 函数调用,而 Servlet 由 Web 容器,Tomcat 来调用。
- Servlet 是运行在 Web 容器中
- 对浏览器发送过来的请求做出响应
二、Filter
(1) 过滤器的概念:
过滤器是服务器与客户端请求与响应的中间层组件,在实际项目开发中过滤器主要用于对浏览器的请求进行
过滤处理,将过滤后的请求再转给下一个资源。与其他的 WEB 应用程序组件不同的是,过滤器是采用了“链”的
方式进行处理的。
(2) 过滤器的使用场景:
- 修改请求和响应,解码乱码的问题。本来 POST 方法是有乱码的,以前是每个 Servlet 去编码。只要编写一个
过滤器,解决所有 POST 乱码问题。
- 可以对请求进行拦截,非法用户未登录访问一些需要登录才能访问资源。
- 发帖子,有不健康的内容,过滤。
(3) 过滤器的特点
不是由用户直接输入地址去访问,而是由过滤器通过过滤的地址来匹配,如果匹配过滤
地址,运行过滤器。
三、Listener
(1) 监听器的概述
监听作用域(请求域,会话域,上下文域)中发生的各种事件,并且对事件做出响应。
- 创建和销毁
- 域中属性添加 setAttribute,删除 removeAttribute,修改 setAttribute()
(2) 监听器的接口分类