서블릿은 Core J2EE Patterns 에서 정이한 Front Controller 패턴을 따른다. 

Front Controller 

  • 중복적인 제어 로직을 피할 수 있다. 
  • 여러 요청에 공통인 로직을 적용할 수 있다.
  • 뷰에서 시스템 로직을 분리할 수 있다. 
  • 시스템의 제어 접속점을 중앙 집중화 할 수 있다. 

HTTP 요청에 대응하여 javax.servlet.http.Httpservlet 클래스가 GenericServlet 클래스로 부터 상속되어 HTTP 요청에 대해서만 반응하는 service() 메서드가 구현되어 있다. 또한, 다음과 같은 각 HTTP 메서드 유형에 대응하는 비어있는 메서드 구현을 제공한다. 


 HTTP 메서드

서블릿 메서드 

목적 

GET 

doGet() 

지정된 URL에서 리소스를 가져온다  

HEAD

doHead() 

GET과 동일하지만, 헤더만 반환된다 

POST 

doPost() 

일반적으로 웹 폼 제출 시에 사용된다  

PUT 

doPut() 

URL에 제공된 엔터티를 저장한다. 

DELETE 

doDelete() 

URL로 식별된 리소스를 삭제한다.  

OPTIONS 

doOptions() 

어떤 HTTP 메서드가 허용되는지를 반환한다. 

Trace 

doTrace() 

진단 목적으로 사용된다. 


현재 Java EE7 에서는 서블릿 프로토콜이 HTTP만 지원하므로 서블릿 클래스가 HttpServlet 클래스에서 파생하도록 하면 된다. 


+ Recent posts