>  기사  >  Java  >  Java의 서블릿 컨테이너

Java의 서블릿 컨테이너

WBOY
WBOY원래의
2024-08-30 16:23:541228검색

Java의 서블릿 컨테이너는 Java 및 j2ee 애플리케이션에 대한 런타임 환경을 제공합니다. 기본적으로 클라이언트는 웹 서버에서 정적 웹 페이지만 요청합니다. 웹 페이지를 입력으로 읽으려면 서블릿 컨테이너를 사용해야 합니다. 우리 응용 프로그램에서. 특정 프로세스에서 실행되고 있던 서버의 일부입니다. Java에는 세 가지 유형의 서블릿 컨테이너 단계(즉, 프로세스 중, 독립형, 프로세스 외)가 있습니다. 이는 애플리케이션의 수명 주기 관리에서 많은 작업을 수행합니다.

광고 이 카테고리에서 인기 있는 강좌 JAVA SERVLET - 전문 분야 | 18개 코스 시리즈 | 6가지 모의고사

무료 소프트웨어 개발 과정 시작

웹 개발, 프로그래밍 언어, 소프트웨어 테스팅 등

자바에서 서블릿 컨테이너란 무엇인가요?

  • 서버 측에서 웹페이지를 동적으로 생성할 수 있습니다. 기본적으로 서블릿 컨테이너는 서블릿과 상호작용하는 웹서버 부분에 지나지 않습니다.
  • 서블릿 컨테이너는 Java 구성요소의 라이프사이클을 관리하는 데 사용됩니다. 또한, 서블릿 컨테이너는 자바 서블릿의 라이프사이클을 관리하는데 사용됩니다.
  • 우리가 알고 있듯이 서블릿 컨테이너는 웹 서버의 일부입니다. 아래의 상태는 다음과 같습니다.

1) 진행 중
2) 처리중
3) 독립형

  • 서블릿 컨테이너의 첫 번째 프로세스는 독립형입니다. 이는 기본적으로 단일 코드의 필수 부분이 될 웹 서버를 포함하는 Java 기반 서버입니다. 서블릿 컨테이너의 예는 Tomcat 서버를 실행하는 것입니다.
  • 서블릿 컨테이너의 두 번째 상태가 진행 중입니다. 웹 서버에서는 다른 프로그램이 실행되기 때문에 이 프로세스는 서블릿 컨테이너의 웹 서버와 구분됩니다. 프로세스 상태 서블릿 컨테이너의 예는 Tomcat이 JBOSS 서버 내부에서 실행되고 있는 것입니다.
  • 서블릿 컨테이너의 세 번째 상태는 out of process입니다. 이 상태에서 서블릿 컨테이너와 웹 서버는 서로 다른 프로세스에서 실행되는 서로 다른 프로그램입니다.

Java에서 서블릿 컨테이너는 어떻게 작동하나요?

  • 서블릿 코드를 실행하려면 서블릿 컨테이너가 필요합니다. Java 가상 머신 위에서 실행됩니다.
  • 자바 가상 머신이 없으면 자바 코드를 실행할 수 없다는 것을 알고 있으므로 자바 가상 머신을 사용하여 서블릿 컨테이너를 실행합니다.
  • 서블릿 컨테이너는 독립형으로 실행되거나 웹서버를 사용하지 않고 실행되기도 합니다.
  • 서블릿 컨테이너 구성 요소는 Java 기반 구성 요소입니다. 컴파일되고 실행 가능한 프로그램일 뿐입니다.
  • 주된 용도는 서블릿을 초기화하고 로드하는 것입니다. 자바 서버 페이지와 서블릿 기술을 구현한 것입니다.
  • 기본적으로 서블릿 컨테이너는 서블릿 클래스를 로드하고 메소드 이름을 init로 호출하며, 서블릿 컨테이너는 이 메소드를 처음 호출합니다.
  • 인스턴스에 대한 서블릿 요청을 구성하기 위해 각 메소드에 대해 서블릿 컨테이너에서 init 메소드를 호출했습니다.
  • init 메소드를 호출하고 서블릿 요청을 구성한 후 메소드 이름을 서블릿 서비스로 호출하여 서블릿 요청과 서블릿 응답을 전달합니다.
  • 서블릿 클래스를 종료한 후 destroy 메소드를 호출하여 서버 클래스를 언로드합니다.

웹 서버가 요청을 처리합니다

  • 웹서버는 인터넷을 통해 이루어진 클라이언트의 요청에 응답하기 위해 사용되는 소프트웨어와 하드웨어일 뿐입니다.
  • Java 웹 서버의 주요 작업은 웹사이트의 콘텐츠를 표시하는 것입니다. 웹서버도 단순메일전송 프로토콜을 지원하고 있습니다.
  • HTTP 서버는 URL과 HTTP를 이해하고 있습니다. 웹서버는 웹서버 파일 및 웹서버와 관련된 기타 파일을 저장하는 데 사용되는 컴퓨터일 뿐입니다.
  • 웹 서버는 이메일을 보내고 받는 데 사용됩니다. 웹 서버는 FTP(파일 전송 프로토콜) 프로토콜에서도 사용되어 파일을 업로드하고 다운로드합니다.
  • 웹 서버를 사용하여 인터넷에 애플리케이션의 웹 페이지를 게시하고 구축할 수도 있습니다.
  • 웹서버와 컨테이너 웹서버간의 통신을 위해서는 서블릿의 컨테이너에서 제공하는 플러그인을 사용합니다.
  • 메서드 호출, 객체 생성, 객체 삭제 및 관리가 포함된 서블릿 컨테이너 수명주기를 관리합니다.

책임

  • 서블릿 컨테이너를 사용하면 웹 컨테이너를 사용하여 메소드 및 라이프사이클 인스턴스를 처리하고 구문 분석합니다. 서블릿 컨테이너의 웹 컨테이너는 풀링 관리 기능을 제공합니다.
  • 브라우저와 클라이언트에 매체 및 서블릿 간 통신 지원을 제공합니다.
  • Java의 서블릿 컨테이너는 모든 새 요청에 대해 새 스레드를 생성하므로 멀티스레딩 개념을 지원하게 됩니다. 서블릿은 모든 요청에 ​​대해 초기화하고 모든 요청에 ​​대해 일회성 메모리를 공유합니다.
  • JSP도 지원합니다. 모든 서블릿 컨테이너 Java 애플리케이션은 JSP를 사용하여 컴파일됩니다.
  • 기본적으로 서블릿 컨테이너는 JSP를 서블릿으로 변환하고 이를 유지하는 역할을 담당합니다.

서블릿 컨테이너 예시

아래 단계는 서블릿 컨테이너를 보여줍니다.

1) 스프링 이니셜라이저를 사용하여 프로젝트 템플릿 생성

그룹 – com. 예
아티팩트 이름 – 서블릿 컨테이너
이름 – 서블릿 컨테이너
설명 – 서블릿 컨테이너
패키지 이름 – com. example.servlet-컨테이너
포장 – 항아리
자바 – 11
종속성 – 스프링 웹.
Java의 서블릿 컨테이너

2) 프로젝트 생성 후 파일을 추출하고 스프링 도구 모음을 사용하여 이 프로젝트를 엽니다 –

Java의 서블릿 컨테이너

3) Spring Tool Suite를 사용하여 프로젝트를 연 후 프로젝트와 해당 파일을 확인합니다 –

Java의 서블릿 컨테이너

4) 종속성 추가 –

코드:

<artifactInstaller> -- Start of artifactInstaller tab.
<groupId>org.apache.tomcat</groupId> -- Start and end of groupid tag.
<artifactId>tomcat</artifactId> -- Start and end of artifactid tag.
<version>${tomcat.version}</version> -- Start and end of version tag.
</artifactInstaller> -- End of artifactInstaller tab.

Java의 서블릿 컨테이너

5) 메인 자바 클래스 생성

코드:

public class ServletContainerApplication extends HttpServlet {
public void doGet (HttpServletRequest req, HttpServletResponse resp)
throws ServletException, IOException {
resp.setContentType ("html");
ServletOutputStream out = resp.getOutputStream ();
out.println ("<html>");
out.println ("<head><title>Welcome to servlet container</title></head>");
out.println ("<body>");
out.println ("<h1>Hi There!</h1>");
out.println ("</body></html>");
}
}

Java의 서블릿 컨테이너

6) Run the application –

Java의 서블릿 컨테이너

Conclusion

Servlet container is nothing but the program which was runs continuously and manages the lifecycle of a specified component. There are three types of servlet container steps available in java i.e. in process, standalone, and out of process. Web server is accessed by using website domain name.

위 내용은 Java의 서블릿 컨테이너의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
이전 기사:서블릿 메소드다음 기사:서블릿 메소드