반응형


1.Servlet 이란?
Servlet interface를 implements하여 생성한 자바 클래스
서블릿은 서블릿 엔진에 의해 동작하며 여러사용자에 의해 호출 될 수 있음.
서블릿의 인스턴스는 재활용 가능.

2.서블릿 작성 규칙
. 서블릿 javax.servlet.http.HttpServlet 클래스를 상속해야만 함.
. doGet 또는 doPost 메서드안에 클라이언트의 요청이 왔을 때 처리해야 할 일들을 기술
. HTML 문서를 출력하는데 있어서, doGet이나 doPost 메서드의 두번째 인자를 사용

3.HttpServletRequest : 사용자의 정보를 서블릿 엔진에 전달하는 객체
. 파라미터의 이름과 값
. 사용자 컴퓨터 이름
. 요청받는 서버의 이름
. input type 의 데이터
. 메소드 : getParameterValues(), getParameter(), getRemoteHost(), getServerName()

4.HttpServletResponse : 서버에서 만든 응답을 암호화해서 사용자에게 전달하는 객체
. 응답으로 사용되는 content의 길이
. 응답으로 사용되는 content의 타입, 화면에 출력해야 할 모든 값
. 메소드 : setContentType(String type), setContentLength(int length), getWriter()

5. doGet메소드의 호출 : html form 태그에서 method=get일 때 호출,URL 주소창에서 servlet url을 입력했을 때도 호출
doPost메소드의 호출 : html form 태그에서 method=post 일 때 호출

6.throws 절에 있는 ServletException과 IOException은 생략이 가능, 다른 익셉션을 추가 할 수 없음.

7.서블릿의 동작 순서
웹브라우저 --> 웹서버 --> 웹어플리케이션 서버 --> 서블릿 컨테이너
. 스레드 생성
. servlet 객체 생성


Servlet 기술 : CGI를 대신할 수 있는 Java 기술 (기존의 CGI의 차이점)

1) 기존 CGI의 로딩과 초기화 작업을 진행하기 때문에 서버에 대한 오버헤드가 크다.
서블릿> 한번 메모리에 로딩되어 수행되면 작업이 모두 수행되어 끝나더라도 메모리에서 해제 되지 않음(재활용)
계속적인 수행 요청이 들어와도 메모리 로딩이나 초기화를 처리하지 않음.
모든 서블릿은 한번만 메모리에 로딩함.

2) 특정 웹 서버에 비의존적이다.
Java 언어로 구현되는 프로그램이기 때문에 플랫폼(운영체제)과는 무관한 실행 파일을 만들 수 있음.
기존의 CGI는 성능향상을 꽤하기 위해서 추가적인 API 가 필요했던 것에 비해서 서블릿은
Servlet API를 활용해서 개발가능. Servlet 엔진만 활용가능.

3) 서블릿은 멀티 스레드로 동작함.
Servlet은 CGI처럼 웹브라우저로 부터의 요청에 대해 각각의 프로세스를 생성하지 않음.
각 요청에 대해서 스레드로 동작

Servlet의 생명 주기(life 사이클)

Servlet 객체생성 --> init() 호출 --> service(), doGet(), doPost() 호출 -->destroy() 호출
최초 한번 최초 한번 요청 시 매번 마지막 한번

반응형


Useful Info

IT News

Site doctor

Domain checker

Icon Generator

Web Tools 1

Web Tools 2

Free Radio

Download videos

솔루션 소개