[JSP/Servlet] Listener / Attribute
Event 처리 모델
-> 객체의 상태가 비정기적으로 변화되는 것을 처리하는 방식
ex) 집에서 불이나면 소방서에 연락한다. 버튼을 클릭하면 저장한다. Text 입력폼이 포커스를 얻으면 글을 지운다
o Event Source : Event가 발생하는 객체
-집, 버튼, p/g
-불나면 Click, focus, 시작
o Event Handler : Event Source에서 발생한 Event를 처리하는 처리자
-소방서에 연락, 저장, 글을 지운다, 불이난 시간을 저장 => 메소드로 만든다.
o Event Listener : Event Source에서 Event 발생을 감시하다가 Event발생시 Event Handler를 호출하는 객체 (실행환경이 담당)
o Listener class : Event Handler 메소드를 가지고 있는 Class
(implements) -> Listener Interface : Evnet Handler 메소드 구문 제공
==================================================================================================
속성(Attribute) - Web Application 내의 Web Component(Servlet / Jsp / Listener / Filter)들이 공유하는 Data => 객체
<name - value>
속성의 저장공간 -> (3가지 모두 공유범위가 다름)
o HttpServletRequest : 요청 ~ 응답 (요청 디스패치) -> 하나의 요청에 대한 범위 (Request Scope)
o HttpSession : 한명의 사용자가 작업시작 ~ 작업종료 -> 일반적인 경우의 범위 = 로그인 ~ 로그아웃 (Session Scope)
<사용자 단위(Web Browser)>
o ServletContext : App 시작 ~ App 종료 -> (Application Scope)
● setAttribute(String n, Object v) -> 속성 추가, 변경
● getAttribute(String name) : Object -> 속성 조회
● removeAttribute(String name) -> 속성 제거
● getAttributeNames() : Enumeration -> 속성의 이름들을 조회
※ : <- 리턴 타입