监听器与mvc

2023-05-04 19:32:37 浏览数 (2)

监听器与mvc

监听器概述

接收Web应用中的某些状态发生改变时会产生相应的事件,并事件发生时做出相关处理

主要接口以及方法

HttpSessionListener
sessionCreated(HttpSessionEvent event)
sessionDestroyed(HttpSessionEvent event)

执行session.invalidate()方法 session会话超时

web.xml中配置
代码语言:javascript复制
<listener>
    <listener-class>监听器完全限定名</listener-class>
</listener>

HttpSessionListener、HttpSessionBindingListener二者的区别

HttpSessionListener只需要设置到web.xml就可以监听整个应用中的所有session
HttpSessionBindingListener必须实例化后放入某一个session中,才能监听
监听范围

HttpSessionListener设置一次就可以监听所有session HttpSessionBindingListener通常是一对一

常用监听器接口

监听器接口

说 明

javax.servlet.ServletContextListener

在Servlet上下文对象初始化或销毁时得到通知

javax.servlet.ServletRequestListener

在请求对象初始化时或者被销毁时得到通知

javax.servlet.http.HttpSessionListener

在session创建后或者失效前得到通知

javax.servlet.ServletContextAttributeListener

在Servlet上下文中的属性列表发生变化时得到通知

javax.servlet.ServletRequestAttributeListener

在请求对象中的属性列表发生变化时得到通知

javax.servlet.http.HttpSessionAttributeListener

在session中的属性列表发生变化时得到通知

javax.servlet.http.HttpSessionActivationListener

绑定到session中,当session被钝化或者激活时得到通知

javax.servlet.http.HttpSessionBindingListener

在绑定session或从session中删除时会得到通知

MVC设计模式

  • 视图(View)- JSP、HTML等:负责与用户交互
  • 控制器(Controller)- Servlet:负责流程控制
  • 模型(Model)- JavaBean:负责业务逻辑处理、数据库访问
处理过程
MVC 优点
  1. 多视图共享一个模型,大大提高代码的可重用性
  2. MVC三个模块相互独立,松耦合架构
  3. 控制器提高了应用程序的灵活性和可配置性
  4. 有利于软件工程化管理
MVC 缺点
  1. 原理复杂
  2. 增加了系统结构和实现的复杂性
  3. 视图对模型数据的低效率访问

0 人点赞