利用
ServletContextLinstener
获取数据源
我们在设计
web
应用程序的时候,在保证功能实现的基础上就会考虑增强应用程序的性能,我们通常会在
web
服务器开始时缓存一些静态数据或者完成一些代价昂贵的操作。
一个最佳实践是使用实现了
javax.sql.DataSource
接口的
JDBC
连接池。
DataSource从JNDI树中获得。每调用一次SQL就要使用JNDI查找DataSource是非常昂贵的工作,而且严重影响了应用的性能。我不建议每次查找数据源建立连接等,相反,我们可以在服务器启动时就缓存DataSource,这样就可以大大提高性能。这一节我
们就学习如何使用
ServletContextLinstene
来完成数据源的查找。
Servlet的应用程序时间管理机制可以使编程者方便的控制ServletContext,HttpSession和ServletResuqst的生命周期。在程序中使用动作监听器可以根据servlet的运行状态更加有效的使用Web服务器资源。
ServletContext
监听器
ServletContext事件监听器包括两个监听器接口:ServletContextLinstener和ServletContextAttributeListener。在这里我们只关心ServletContext中ServletContextLinstener接口。
事件类型
|
解释
|
监听器接口
|
接口方法
|