서블릿 작성, 배포, web.xml 설정의 이해

1. 서블릿 배포란?

서블릿 배포는 개발된 서블릿을 애플리케이션 서버(예: 아파치 톰캣)에 올려서 클라이언트가 접근할 수 있도록 준비하는 과정을 말한다. 배포된 서블릿은 클라이언트의 HTTP 요청을 받아 처리하고, 동적 웹 페이지를 생성하여 응답한다.

 

배포 과정의 주요 단계

  1. 웹 애플리케이션 구조 설정
    • 서블릿을 포함한 모든 웹 애플리케이션 파일을 특정 디렉토리 구조에 맞게 배치.
  2. 배포 기술
    • web.xml 파일 또는 애노테이션을 사용하여 서블릿, 필터, 리스너 등을 설정한다.
  3. WAR 파일 생성 및 배포
    • 웹 애플리케이션을 WAR (Web Application Archive) 파일로 패키징하여 배포할 수 있다.
  4. 서버 설정
    • 웹 서버 또는 애플리케이션 서버에 웹 애플리케이션을 등록하고 실행한다.

웹 애플리케이션 구조

웹 애플리케이션의 기본 디렉토리 구조는 다음과 같다

mywebapp/
├── WEB-INF/
│   ├── web.xml
│   ├── classes/
│   │   └── com/example/HelloServlet.class
│   └── lib/
│       └── (추가 라이브러리 JAR 파일들)
├── index.html
└── (기타 정적 리소스들: HTML, CSS, JavaScript 파일 등)

web.xml 파일 설정

web.xml 파일은 웹 애플리케이션의 배포 설명자로서, 서블릿과 URL 매핑을 정의한다.

예를 들어, 다음과 같은 web.xml 설정을 통해 HelloServlet을 /hello URL에 매핑할 수 있다

<servlet>
    <description></description>
    <display-name>HelloServlet</display-name>
    <servlet-name>HelloServlet</servlet-name>
    <servlet-class>com.tenco.HelloServlet</servlet-class>
</servlet>
<servlet-mapping>
    <servlet-name>HelloServlet</servlet-name>
    <url-pattern>/hello-servlet</url-pattern>
</servlet-mapping>

2. WAR 파일 생성 및 배포

(Root Context 와 .war 이름을 동일하게 설정)

WAR (Web Application Archive) 파일은 Java 웹 애플리케이션을 패키징하기 위한 표준 형식이며, 웹 애플리케이션을 구성하는 모든 파일들을 하나의 압축 파일로 묶어 포장한 것. 추가적인 메타 정보와 함께 .jar 파일과 비 슷하게 META-INF, WEB-INF 디렉토리를 포함하여 패키징.

 

Eclipse를 사용한 WAR 파일 생성

  1. 프로젝트 선택:
    • Eclipse에서 Dynamic Web Project를 선택한다.
  2. WAR 파일로 내보내기:
    • 프로젝트를 우클릭하고 Export를 선택한다.
    • WAR file을 선택한 후 Next를 클릭한다.
  3. WAR 파일 설정:
    • Destination 필드에 WAR 파일을 저장할 경로를 지정한다.
    • Export source files 옵션을 선택하여 소스 파일을 포함할지 여부를 결정한다.
    • Finish 버튼을 클릭하여 WAR 파일을 생성한다.

설치했던 톰캣 폴더에 war 파일 저장

JSP 목차로 돌아가기

 

'Java > JSP' 카테고리의 다른 글

서블릿과 서블릿 컨텍스트란?  (0) 2024.07.01
Get, Post 요청 방식의 이해  (0) 2024.07.01
서블릿 Life Cycle 이란?  (0) 2024.06.28
서블릿이란?  (0) 2024.06.28
아파치 톰캣 시작과 폴더 구조 확인  (0) 2024.06.27