■ 서블릿 생명주기 메소드 종류 



init()

- 딱 한 번만 호출됩니다.

- 서블릿 컨테이너가 서블릿 객체를 생성한 후 호출합니다.

- 서블릿이 작업하는데 필요한 자원을 준비시키는 코드를 넣습니다.


destroy()

- 딱 한 번만 호출됩니다.

- 웹 어플리케이션의 실행이 멈출 때,

  서블릿이 사용한 자원을 초기화시킬 수 있도록 이 메서드를 호출합니다.

- 서블릿이 사용한 자원을 초기화 시키는 코드를 넣습니다.


service()

- 해당 서블릿에 대해 요청이 들어올 때마다 호출됩니다.

- 클라이언트가 요청한 작업을 처리하는 코드를 넣습니다.



──━━━

# 참고! : servlet-api 설정하기


▶ servlet-api 라이브러리는 서블릿 컨테이너에 포함되어 있습니다.

    따라서 $tmp/wtpwebapps/웹프로젝트명/WEB-INF/lib 폴더에 배치할 필요가 

    없습니다. 단지 서블릿을 만들 때 컴파일 단계에서만 사용하면 됩니다.



만약 특정 라이브러리 정보를 배치에서 제외하고 싶다면?


▶ build.gradle 파일의 dependencies {} 블록에 라이브러리 정보를 등록할 때, 

    'complie' 명령 대신 'providedCompile' 명령을 사용하면 됩니다.




ex) providedCompile 예제!


dependencies {

//complie: 빌드할 때도 사용하고, 배치에도 포함시킨다.

compile group: 'com.google.code.gson', name: 'gson', version: '2.8.0'

compile group: 'mysql', name: 'mysql-connector-java', version: '5.1.42'


//providedCompile: 빌드할 때만 사용한다. 배치에는 제외시킨다.

providedCompile group: 'javax.servlet', name: 'javax.servlet-api', version: '3.1.0'

}




■ javax.servlet.Servlet 인터페이스, Servlet이란?



▶ 서블릿 컨테이너가 클라이언트 요청을 처리하기 위해 

    객체에 대해 호출하는 메서드의 규칙!


▶ 클라이언트 요청을 처리하는 클래슬르 만들 때는

    반드시 이 규칙에 따라 만들어야 합니다. 


▶ 이 규칙에 따라 만든 클래스를 '서블릿(Servlet)'이라고 부릅니다.

블로그 이미지

필로그래머

,