본문 바로가기
JSP

JSP와 서블릿(Servlet)

by 복제비 2022. 7. 8.

JSP와 서블릿(Servlet)

 

JSP 파일의 처리 과정

JSP 파일의 전체적인 처리과정은 다음과 같습니다.

서블릿(Servlet) 개요

JSP 는 Servlet 을 기반으로 한 기술입니다.
JSP 는 Servlet 을 대체하는 기술이 아니라 상호 보완적인 기술입니다.
Servlet은 기본적으로 Java 언어 기반이므로 Java 언어에 대한 프로그램 실력을 쌓는 것이 매우 중요합니다.

 

 

Servlet의 장점

● Java를 기반으로 하므로 Java API를 모두 사용할 수 있습니다.
● 쓰레드를 기반으로 하므로 웹 어플리케이션 서버 자원을 효율적으로 활용할 수 있습니다.
● 웹 어플리케이션에서 효율적인 자료 공유 방법을 제공합니다.
● 비즈니스 로직과 프리젠테이션 로직을 분리할 수 있습니다.
● 컨트롤러와 뷰의 역할 분담으로 인해 웹 디자이너와 개발자 간의 효율적인 업무 분담이 가능합니다.
● 유지보수가 수월하고, 기능 확장이 용이합니다.
● Servlet 컨텍스트 리스너 및 필터 Servlet 등 고급 프로그래밍 기법을 통해 보다 효과적인 웹 어플리케이션 설계가 가능해집니다.

 

Servlet 동작 과정과 생명주기

서블릿(Servlet) 클래스의 전체적인 동작 과정과 생명 주기는 다음과 같습니다.

 

 

서블릿(Servlet)에 대한 사용자 요청 처리 과정

web.xml 파일을 참조해서  URL 매핑(URL Mapping)을 확인합니다.

해당 Servlet 인스턴스로부터 스레드를 생성합니다.

service() 메서드를 호출합니다.

모든 사용자 요청에 대해 개별적인 service( ) 메서드가 호출됩니다.

GET 또는 POST 요청을 구분하여 doGet( ) 또는 doPost( ) 메서드가 호출됩니다.

   Servlet 개발자는 doGet( ) 또는 doPost( ) 메서드에서 대부분의 필요한 기능을 구현해 줍니다.

서블릿(Servlet) 동작 과정

Servlet 은 컴파일 과정이 필요하고 특정 클래스를 상속 받아 구현합니다.

    javax.servlet.http.HttpServlet 클래스를 상속하여 구현합니다.

개발자는 doGet() 또는 doPost() 메서드에서 구현해야 할 부분을  작성해 줍니다.

 doGet()메서드에서 다시 doPost()를 호출하면 doPost() 내부에만 관련 처리 과정을 구현하는 것이 좋습니다.

 

 

클라이언트의 요청 - GET 방식

GET방식은 단순히 서버에 있는 정보를 가져오기 위해 사용하는 방식입니다.

 

GET방식의 특징

HTML, 이미지 등을 웹 브라우저에서 가져오기 위한 일반적인 방식을 의미합니다.

서버로의 데이터 전달은 QUERY_STRING 환경 변수를 통해서 가능합니다.

   QUERY_STRING : 요청 URL에서  ‘?’ 이후의 값들을 의미합니다.

   ‘속성=값’ 형태로 사용해야 하며,  ‘&’ 는 여러 속성 값을 전달할 때 연결해주는 문자열입니다.

클라이언트에서 서버로 전달할 수 있는 데이터 크기 (QUERY_STRING )는 최대 240Byte까지 가능합니다.

요청 URL에 값들이 노출되기 때문에 보안 문제가 생길 수 있습니다.

 

클라이언트의 요청  - POST 방식

POST 방식은 클라이언트에 있는 정보를 서버로 올리기 위해 사용하는 방식입니다.

 

POST 방식의 특징

예를 들어 HTML 폼에 입력한 내용을 서버에 전달할 때 사용하는 방식입니다.
서버에 전달할 수 있는 데이터 크기는 제한이 없습니다.

URL에 전달하려는 정보 값이 표시되지 않습니다.

로그인 정보를 전달할 때에는 POST 방식을 사용합니다.

 

 

 

 

'JSP' 카테고리의 다른 글

JSP 반복문  (0) 2022.07.10
JSP 제어문  (0) 2022.07.09
HelloWorld Servlet 출력하기  (0) 2022.07.07
JSP 기본 구조  (0) 2022.07.06
JSP 개발 환경 구축  (0) 2022.07.05

댓글