1. Listener :监听器
1.1 概念:web 三大组件之一
事件监听机制 :
- 事件 : 一件事情
- 事件源 : 事件发生的地方
- 监听器 :一个对象
- 注册监听 : 将事件、事件源、监听器绑在一起 。当事件源发生某个事件后,执行监听器代码
1.2 ServletContextListener :监听ServletContext 对象的创建和销毁
- 1方法
- void contextDestoryed(ServletContextEvent sce) :ServletContext对象被销毁前会调用该方法
- void contextInitialized(ServletContextEvent sce) :ServletContext 对象创建前会调用该方法
- 2步骤
- 定义一个类,实现ServletContextListener 接口
- 复写方法
- 配置
- web.xml 配置方法
- 注解 :
@WebListener@WebListener public class ContextLoaderListener implements ServletContextListener{ /** * 监听ServletContext 对象创建的,ServletContext 对象服务器启动后自动创建 * 在服务器启动后自动调用 * @param servletContextEvent */ @Override public void contextInitialized(ServletContextEvent servletContextEvent) { //加载资源文件 //1. 加载 ServletContext 对象 ServletContext servletContext = servletContextEvent.getServletContext(); //2. 加载资源文件 String contextConfigLocation = servletContext.getInitParameter("contextConfigLocation"); //3. 获取真实路径 String realPath = servletContext.getRealPath(contextConfigLocation); //4. 加载进内存 try { FileInputStream fileInputStream = new FileInputStream(realPath); System.out.println(fileInputStream); } catch (Exception e) { e.printStackTrace(); } System.out.println("ServletContext 对象被调用了。。。"); } /** * 服务器正常关闭后,ServletContext 对象 被销毁,当服务器正常关闭后,该方法被调用 * @param servletContextEvent */ @Override public void contextDestroyed(ServletContextEvent servletContextEvent) { System.out.println("ServletContext 对象被调用了。。。"); } }
796

被折叠的 条评论
为什么被折叠?



