0707 Servlet
- ServletContext 객체의 setAttribute(name, value) 메서드를 사용하여 속성 값을 저장한다.
- 앞서 말했듯이, 저장된 속성 값은 웹 어플리케이션이 제거되기 전까지 계속해서 사용할 수 있다.
String name = "홍길동"; int age = 20; //반드시 this 키워드로 소속을 밝히고 접근할 것! this.getServletContext().setAttribute("name", name); this.getServletContext().setAttribute("age", age);
- ServletContext 객체의 getAttribute(name) 메서드를 사용하여 속성 값을 얻는다.
- 저장되었던 속성 값은 웹 어플리케이션이 제거되기 전까지 모든 JSP파일과 서블릿에서 참조가 가능하다.
//반드시 this 키워드로 소속을 밝히고 접근할 것! String name = (String)this.getServletContext().getAttribute("name"); int age = (Integer)this.getServletContext().getAttribute("age");
- ServletContextListener를 생성하고 web.xml에 태그로 등록해주거나, @WebListener 어노테이션을 이용한다.
- @WebListener 어노테이션을 이용하면 번거롭게 web.xml에 listener를 등록해줄 필요가 없다.
- ServletContextListener는 인터페이스로서 다음 2가지 메서드를 갖는다.
- contextInitialized(ServletContextEvent event)
- 웹 어플리케이션 서버 (Tomcat)가 시작될 때 이벤트를 감지하고, 콘솔창에 로그를 남긴다.
- contextDestroyed(ServletContextEvent event)
- 웹 어플리케이션 서버 (Tomcat)가 종료될 때 이벤트를 감지하고, 콘솔창에 로그를 남긴다.