[JSP] Servlet Life cycle(서블릿 생명주기)

Junseo Kim·2020년 1월 10일
0

[JSP]JSP기초

목록 보기
5/19
post-custom-banner

Servlet 생명주기

스크린샷 2020-01-11 오전 3.29.03.png

init() - servlet이 생성되는 단계
service - servlet이 개발자가 구현한 기능을 통해 일을 하는 단계
destroy()- 일을 끝내고 servlet이 컨테이너에서 소멸되는 단계

*init되기 전 Servlet을 준비해주는 단계인 @PostConstruct / servlet이 소멸되고 나서 정리해주기 위한 단계인 @PreDestroy 단계도 존재.(개발자가 만드는 임의의 메소드이다.)

@PostConstruct

개발자가 만드는 임의의 메소드. init 단계 전에 실행됨.

    @PostConstruct
    public void beforeInit() {
        //~~~~~~~~~~~~~~~`
    }

init 단계

init() 메소드를 재정의하여 사용. 공통적으로 일어나는 일을 다룰 때 많이 사용.

    @Override
    public void init() throws ServletException {
        //~~~~~~~~~~~~~~~~~~
    }

service 단계

service 메소드가 존재하긴 하지만, 잘 사용하지 않음. 주로 doGet 메소드를 사용. servlet의 주요임무 담당

    protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
       //~~~~~~~~~~~~~~~~~~
    }

destroy 단계

destroy() 메소드를 재정의하여 사용. 자원 해제가 필요한 경우 많이 사용

    @Override
    public void destroy() {
        //~~~~~~~~~~~~~~~~~~
    }

@PreDestroy

개발자가 만드는 임의의 메소드. destroy단계 이후에 실행됨.

    @PreDestroy
    public void afterDestroy() {
        //~~~~~~~~~~~~~~~~~
    }

스크린샷 2020-01-11 오전 3.39.29.png

스크린샷 2020-01-11 오전 3.40.19.png

*꼭 모든 단계를 다 구현해야 할 필요는 없다. doGet 메소드만 구현하여도 상관없다.

post-custom-banner

0개의 댓글