서블릿 소개
서블릿이란?
Java 서블릿은 웹 브라우저나 다른 HTTP 클라이언트의 요청과 HTTP 서버의 데이터베이스 또는 애플리케이션 사이의 중간 계층으로 웹 서버나 애플리케이션 서버에서 실행되는 프로그램입니다.
서블릿을 사용하면 웹 양식에서 사용자 입력을 수집하고, 데이터베이스나 기타 소스에서 레코드를 렌더링하고, 웹 페이지를 동적으로 생성할 수 있습니다.
Java Servlet은 일반적으로 CGI(Common Gateway Interface, Public Gateway Interface)를 사용하여 구현된 프로그램과 동일한 결과를 얻을 수 있습니다. 하지만 CGI에 비해 Servlet은 다음과 같은 장점이 있습니다.
성능이 훨씬 좋습니다.
서블릿은 웹 서버의 주소 공간 내에서 실행됩니다. 이렇게 하면 각 클라이언트 요청을 처리하기 위해 별도의 프로세스를 만들 필요가 없습니다.
서블릿은 Java로 작성되므로 플랫폼 독립적입니다.
서버의 Java Security Manager는 서버 시스템의 리소스를 보호하기 위해 일련의 제한 사항을 적용합니다. 따라서 서블릿은 신뢰할 수 있습니다.
Java 클래스 라이브러리의 모든 기능을 서블릿에서 사용할 수 있습니다. 소켓 및 RMI 메커니즘을 통해 애플릿, 데이터베이스 또는 기타 소프트웨어와 상호 작용할 수 있습니다.
서블릿 아키텍처
다음 다이어그램은 웹 애플리케이션에서 서블릿의 위치를 보여줍니다.
서블릿 작업
서블릿은 다음과 같은 주요 작업을 수행합니다.
명시적으로 전송된 클라이언트(브라우저) 읽기 데이터. 여기에는 웹 페이지의 HTML 양식이 포함되며, 애플릿이나 사용자 정의 HTTP 클라이언트 프로그램의 양식일 수도 있습니다.
클라이언트(브라우저)가 보낸 암시적 HTTP 요청 데이터를 읽습니다. 여기에는 브라우저가 이해하는 쿠키, 미디어 유형, 압축 형식 등이 포함됩니다.
데이터를 처리하고 결과를 생성합니다. 이 프로세스에는 데이터베이스 액세스, RMI 또는 CORBA 호출 수행, 웹 서비스 호출 또는 해당 응답 직접 계산이 필요할 수 있습니다.
클라이언트(브라우저)에 명시적 데이터(예: 문서)를 보냅니다. 문서는 텍스트 파일(HTML 또는 XML), 바이너리 파일(GIF 이미지), Excel 등을 포함한 다양한 형식일 수 있습니다.
클라이언트(브라우저)에 암시적 HTTP 응답을 보냅니다. 여기에는 반환할 문서 유형(예: HTML)을 브라우저나 다른 클라이언트에 알리고, 쿠키 및 캐시 매개변수 설정 및 기타 유사한 작업이 포함됩니다.
서블릿 패키지
Java Servlet은 Java Servlet 사양을 지원하는 인터프리터를 사용하여 웹 서버에서 실행되는 Java 클래스입니다.
서블릿은 대규모 지원을 지원하는 Java 버전인 Java Enterprise Edition의 표준 부분인 javax.servlet 및 javax.servlet.http 패키지를 사용하여 생성할 수 있습니다. 규모 개발 프로젝트 클래스 라이브러리의 확장 버전입니다.
이러한 클래스는 Java Servlet 및 JSP 사양을 구현합니다. 이 튜토리얼을 작성하는 시점에서 해당 버전은 각각 Java Servlet 2.5 및 JSP 2.1입니다.
Java 서블릿은 다른 Java 클래스와 마찬가지로 생성되고 컴파일됩니다. 서블릿 패키지를 설치하고 컴퓨터의 클래스 경로에 추가한 후 JDK의 Java 컴파일러 또는 기타 컴파일러를 사용하여 서블릿을 컴파일할 수 있습니다.
다음은 무엇인가요?
다음으로 이 튜토리얼에서는 이후에 서블릿을 사용할 수 있도록 서블릿 환경을 설정하는 방법을 단계별로 설명합니다. 그러니 안전벨트를 매시고 우리의 서블릿 학습 여정에 동참하세요! 나는 당신이 이 튜토리얼을 정말 좋아할 것이라고 생각합니다.