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 |
댓글