Servlet第七章知识点总结——Servlet监听器

本文详细介绍了Servlet监听器的概念、分类及作用,包括ServletContextListener、HttpSessionListener和ServletRequestListener。通过实例解析了监听器如何管理应用程序环境、用户会话和请求消息对象的事件,以及如何在部署描述符中声明和使用监听器。同时,文章还探讨了监听器在数据库连接管理和购物车保存等场景的应用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Servlet第七章知识点总结——Servlet监听器

 

目标

 

理解事件监听器的概念

编写事件监听器

部署事件监听器

 

知识点预览

 

监听器

 

监听器

 

1.       什么是事件监听器

a)         定义:

                                      i.              专门用于监听另一个java对象的方法调用或属性改变

                                    ii.              当被监听对象发生上述事件后,监听器某个方法将立即被执行。

b)        按监听的对象来划分:

                                      i.              用于监听应用程序环境对象(ServletContext)的事件监听器

                                    ii.              用于监听用户会话对象(HttpSession)的事件监听器

                                  iii.              用于监听请求消息对象(ServletRequest)的事件监听器

c)         按监听的事件类型进行划分

                                      i.              用于监听域对象自身的创建和销毁的事件监听器

                                    ii.              用于监听域对象中的属性的增加和删除的事件监听器

                                  iii.              用于监听绑定到HttpSession域中的某个对象的状态的事件监听器

2.       ServletContextListener

a)         作用:

监听ServletContext对象的创建和删除以及属性的添加、删除和修改等操作。

b)        两个事件处理方法

                                      i.              public void contextInitialized(ServletContextEvent sce)

                                    ii.              public Void contextDestroyed(ServletContextEvent sce)

3.       HttpSessionListener

a)         管理来自同一个客户端或用户发送向一个网络应用的一系列请求的状态和资源集合

b)        两种类型事件监听器

                                      i.              public void sessionCreated(HttpSessionEvent se)

                                    ii.              public void sessionDestoryed(HttpSessionEvent se)

4.       ServletRequestListener

a)         servlet请求整个生命周期的管理

b)        两种类型的事件监听器

                                      i.              public void requestInitialized(ServletRequestEvent sre)

                                    ii.              public void requestDestroyed(ServletRequestEvent sre)

5.       J2EE网络应用中的监听器

 

6.       事件和监听器接口

 

7.       监听器规定

a)         每一个监听器类必须有一个公共的没有参数的构造函数

b)        监听器类打包到WAR中,要么放在WEB-INF/classess文件夹下面,要么放在WEB-INF/lib目录下面的JAR文件中.

c)         监听器类使用监听器元素在网络布署描述符中声明.

8.       一个Servlet Context样例管理数据库连接

a)         当一个启用启动,监听器类被通知,应用登录数据库,并且把连接存放到servlet上下文中.

b)        应用中的Servlet在网络应用中在活动中可以获得这个连接.

c)         当然网络服务器关闭时,或者程序从网络容器中移除时,监听器类接到通知并且把数据库连接关闭.

9.       The CtxListener

 

10.   The DBConnection

 

11.   CtxListener的布署描述符

 

a)         <Listener>元素的子元素

                                      i.              desoption

                                    ii.              display-name

                                  iii.              icon

                                   iv.              listener-class

12.   思考-何时保存购物车

a)         当一个会话启动时,监听器接到通知.WEB应用创建一个购物车,并且把购物车保存到会话上下文中。

b)        应用中的Servlet在活动中访问购物车并向购物车中添加和删除商品.

c)         当会话失效,或者应用从网络容器中移除,监听器接到通知并且移除购物车.

13.   The SessionListener

 

14.   SessionListener的布署描述

 

 

网络应用程序事件的的回顾

 

扩展HttpServlet

重写一个服务方法去接受servlet的请求

设置内容类型

使用getPrintWriter()getServletOutputStream()

利用println方法生成动态HTML

使用output.close()

使用getServletContext().log()记录日志信息

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值