JAVA/개념정리

서블릿 - 리스너

hyun9_9 2024. 1. 18. 13:44

외부의 자극,액션, 수행을 감지 -모니터링함
외부의 요청, 자극, 수행, 액션등을 항상 감지(모니터링)하는 것
: 해당 리스너가 언제 반응할지 설정하며 생성함
-> "서블릿 컨테이너가 시작될때" 로 설정함
== 톰캣이 시작될때

 

 

실무에서 사용되는 리스너

서블릿 컨테이너가 실행될때
Lifecycle - 90퍼 이상 사용
서블릿컨테이너에 변화가생겼을대
Changes to attributes

세션이 생겼을때
Lifecycle
세션이 변화가 생겼을때
Changes to attributes

리퀘스트가 생겼을때
Lifecycle
리퀘스트가 변화가 생겼을때
Changes to attributes

 

리스너 생성
-> "서블릿 컨테이너가 시작될때" 로 설정함
== 톰캣이 시작될때

 public void contextInitialized(ServletContextEvent sce)  { 
//여기에 크롤링 관련 코드를 작성
 }

처음에 단한번 실행
서버실행시 중간에 로그가 찍힌다
서블릿 컨테이너의 시작에 반응한다는 것을 확인

 

 

ex)

크롤링 리스너이기때문에 크롤링 코드를 적어도됨 
하지만 크롤링 코드가 이미 있는 상황이라면 그냥 호출하면됨

 

주의사항 : 자바 부터 했던사람은 스테틱이었다
new 하지 않기 위해 스테틱을 사용했지만
추천하지 않음 - 객체가 프로그램이 끝날때까지 살아있기때문
new 하였을땐 사용하지 않으면 자동으로 닫아줄수 있기 때문이다