56-过滤器和监听器

过滤器和监听器

Web三大组件:

  • Servlet:表现层-控制器

    Servlet是一个运行在服务器端的小程序。能够接收客户端的请求并做出相应的响应。

  • 过滤器

    过滤,筛选。

  • 监听器

    监听web相关组件的生命周期和相关活动的。

1. 理解过滤器的特点和工作原理

可以实现 Web 应用程序中的预处理和后期处理逻辑:日志记录、改善性能、安全与会话管理、敏感字过滤,或者自动登录…

今天的应用:解决请求和响应的字符编码问题。

你可以做的:你可以处理下新闻管理系统的管理员页面访问。

过滤器工作流程

过滤器的生命周期:

当服务器启动的时候,过滤器会进行实例化并且进行初始化(init()),当每次请求过来的时候,都会执行对应的doFilter方法进行过滤,当服务器被正常关闭或者项目被正常移除的时候,过滤器会进行销毁(destroy())。

2. 掌握过滤器的定义和配置

3. 理解过滤器链

如果有多个过滤器(必须是保证请求都会被过滤),那么对于该请求会组合成过滤器链。

过滤器链里过滤器的执行顺序是由<filter-mapping>的位置决定的。

4. 理解监听器(Listener)的作用

主要监听的就是:request(HttpServletRequest),session(HttpSession),application(ServletContext)

监听器的分类:

  • 监听域对象的创建和销毁

    ServletContextListener

    HttpSessionListener

    ServletRequestListener

  • 监听域对象中属性的增删改

    ServletContextAttributeListener

    HttpSessionAttributeListener

    ServletRequestAttributeListener

  • 监听session在对某个对象操作时的情况(感知型监听器)

    HttpSessionBindingListener

5. 掌握监听器的使用方法

需求:要求统计在线人数!

分析:

在线人数存储在application中。

某用户上线 -> 在线人数+1

当用户登录成功 ->  
	session.setAttribute(用户);  -> 
		application.setAttribute(application.getAttribute(在线人数)+1);

某用户下线 -> 在线人数-1

感知型监听器:可以限定只在指定对象(例如:user)存储到session中时 进行触发!

6. 理解MVC设计模式

MVC设计模式初识

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值