2014년 5월 25일 일요일

자바 서블릿 서블릿 인터페이스(Servlet Interface)[오라클자바커뮤니티 서블릿 강좌]

자바 서블릿 서블릿 인터페이스(Servlet Interface)[오라클자바커뮤니티 서블릿 강좌]
 
 

[그림 서블릿인터페이스 상속구조]
 
Servlet 인터페이스

목  적 : 클라이언트로부터의 요청에 대한 응답을 생성한다.
모든 서블릿은 javax.servlet.Servlet 인터페이스를 구현하여야 한다.
Javax.servlet.Servlet Interface를 구현하기 위해 서블릿 개발자는 javax. servlet.GenericServlet Class를 상속한 generic servlet을 구현하거나, javax.servlet.http.HttpServlet Class를 상속한 HTTP servlet를 구현할 수 있다.
 
 
public interface Servlet {
   public void init(ServletConfig config) throws ServletException;
   public void service(ServletRequest req, ServletResponse  res)
                      throws ServletException, IOException;
   public void destroy();
   public ServletConfig getServletConfig();
   public String getServletInfo();
}
 

init(ServletConfig config) throws ServletException

서블릿 콘테이너는 서블릿 객체를 생성한 후, 이 메쏘드를 한번만 호출함으로써 서블릿 객체가 초기화 된다. 또한 ServletConfig Type의 객체를 init()메소드에 전달하여 configuration data들이 서블릿 인스턴스에 의해 저장되어 나중에 사용할수 있게 한다.
이때 InitParamter와 ServletContext에 대한 Access가 가능하다.
에러발생시ServletException을 던지며, 만약 Exception이 발생된다면  어떠한 request도 서블릿으로 전달되지 않는다.

ServletConfig getServletConfig()

ServletConfig는 이 서블릿의 초기화 매개변수 및 서블릿 초기환경 정보를 갖고 있다.
서블릿의 init method 가 불리어 질때 ServletConfig onject는 한번에 전달된다.
Return : the ServletConfig object that initializes this servlet
 
service(ServletRequest req, ServletResponse res) throws ServletException, IOException

서버는 클라이언트 요청이 들어올 때마다 해당 서블릿 객체의 이 메소드를 반복하여 호출한다.
하나의 서블릿 객체가 지속적으로 존재하여 여러개의 클라이언트 요청을 처리 할 수 있다.
서블릿엔진은 Servlet이 초기화가 완료 될때까지 service() 메소드를 대기 시킬수 있다.
 
 
destroy()
서버 관리자에 의해 서블릿이 제거되거나, Time기간이 경과한다든지, 웹서버를 Restart할 경우, 이 메소드가 호출 된 후 쓰레기 수집된다. 이 메쏘드 내에서는 서블릿 객체와 관련된 자원을 반환하고, 유지 되어야 하는 정보는 파일이나 데이터베이스에 저장해야 한다.
String getServletInfo()
저자, 버전, 저작권 등에 관한 정보를 담는다. 서블릿 관리 도구에 의해 이용될 수 있다. 
 
 


오라클자바커뮤니티교육센터, 개발자전문교육, 개인80%환급 www.oraclejavacommunity.com

평일주간(9:30~18:20) 개강
(6/09)안드로이드개발자과정
(6/09)C#4.0,ADO.NET,Network 프로그래밍
(5/26)[기업100%환급]Spring ,MyBatis,Hibernate실무과정
(5/28)[교육전취업확정]Spring,MyBatis,XPlatform실무프로젝트과정
(5/30)[기업100%환급]자바기초에서 JDBC, Servlet/JSP까지
(5/30)[기업100%환급]SQL기초에서 Schema Object까지
(6/09)[기업100%환급]PL/SQL,ORACLE HINT,TUNING
(6/09)[기업100%환급]안드로이드개발자과정

평일야간(19:00~21:50) 개강
(5/26)웹퍼블리싱 마스터
(5/28)Spring3.X, MyBatis, Hibernate실무과정
(5/28)SQL초보에서실전전문가까지
(5/29)자바기초에서JSP,Ajax,jQuery,Spring3.2,MyBatis까지
(6/03)안드로이드개발자과정
(6/10)C#4.0, ADO.NET, Network 프로그래밍
(6/19)C#,ASP.NET마스터

주말(10:00~17:50) 개강
(5/31)Spring3.X, MyBatis, Hibernate실무과정
(5/31)자바기초에서JSP,Ajax,jQuery,Spring3.2,MyBatis까지
(5/31)SQL초보에서실전전문가까지
(5/31)C#,ASP.NET마스터
(5/31)실무예제로 배워보는 jQuery(개발자/디자이너를위한)
(5/31)안드로이드개발자과정

주말저녁(18:30~22:20) 개강
(6/21)JAVA,Network&WEB&Framework
(6/21)SQL기초에서실무까지

댓글 없음:

댓글 쓰기