开发网页游戏过程记录14-应用程序全局监听器

本文详细介绍了如何使用ServletContextListener在Servlet应用的启动和关闭阶段进行资源的初始化与回收,通过实现contextInitialized和contextDestroyed方法,确保应用资源的有效管理和内存优化。

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

在应用的执行过程当中,当应用启动时需要加载一些初始化设置和参数,比如玩家的姓名等等,而当应用关闭后,需要回收所有资源。能实现这两个功能的首选ServletContextListener,这个监听器可以监听servlet上下文(ServletContext)的状态。两个方法如下:

private ServletContext context;

/** * 应用程序实始化时,加载资源、读取配置、计划任务等。 * * @see javax.servlet.ServletContextListener#contextInitialized(javax.servlet.ServletContextEvent) */ @Override public void contextInitialized(ServletContextEvent contextEvent) {在这个方法中会定义一些初始化方法,如调用之前读取excel信息生成相应的sql语句并调用mysql命令执行配置表的初始化等方法。

/** * 停止Web服务器时,释放资源、停止计划任务、线程等。 * * @see javax.servlet.ServletContextListener#contextDestroyed(javax.servlet.ServletContextEvent) */ @Override public void contextDestroyed(ServletContextEvent contextEvent) { context = null; }定义了这两个方法后我们就可以对servletContext进行监听了,不再担心资源内存的浪费。当然需要在配置文件中配置此listener。

<listener> <listener-class>com.bfgame.go.servlet.ApplicationListener</listener-class> </listener>


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值