문제

서블릿에 init () 메소드가 필요한 이유는 무엇입니까? 생성자를 초기화에 사용할 수 없습니까?

도움이 되었습니까?

해결책

서블릿은 추상 클래스가 아니라 인터페이스이기 때문입니다. 생성자 인수는 인터페이스에 지정할 수 없으므로 ServletContext는 일반 메소드 서명에 지정해야합니다.

이를 통해 애플리케이션 서버는 서블릿 구현을 올바르게 초기화하는 방법을 알 수 있습니다.

또 다른 솔루션은 Compile Time에서는 ServletContext를 취하는 생성자가 필요하지만 시행되지는 않았을 것입니다. 그런 다음 응용 프로그램 서버는 반사를 통해 생성자를 호출합니다. 그러나 서블릿 사양의 디자이너는이 경로를 선택하지 않았습니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top