둘사이의 차이점이 뭔가요?
특히 세션이 죽을때 말이죠.
직접 테스트해본 소스파일을 같이 올립니다.
BeanTest 는 HttpSessionListener 를 implementation 했구요, BeanTest2 는 HttpSessionBindingListener 를 implementation 했습니다.
또한 Bean2 는 위의 Session 객체를 관리하는 빈인데요. 한번은 BeanTest 를 관리해보았고, 한번은 BeanTest2 를 관리해 보았습니다.
각각에 대해 테스트 해보니 결과가 다음과 같았습니다.
BeanTest : destroySession() 을 불러줄때 test 의 값 : null
BeanTest2 : valueUnbound() 을 불러줄때 test 의 값 : 처음에 세팅한 값. 즉 현제세션의 id
결론 : HttpSessionListener에서 destroySession() 함수는 현제 세션이 날라간 이후에 불려진다????
거참.. 이것과 관련한 글들을 읽어보았는데 어떤곳에는 HttpSessionListener 인터페이스를 사용하더군요. ex: http://okjsp.pe.kr/bbs?act=VIEW&seq=25935&bbs=bbs4&keyfield=content&keyword=&pg=0
그리고 자료실->소스자료실 에서 살펴본 글에서는 HttpSessionBindingListener 인터페이스를 사용하구요. ex : http://okjsp.pe.kr/bbs?act=VIEW&seq=20524&bbs=bbs4&keyfield=subject&keyword=접속자&pg=0
알송 달송 하군요.. -_-;