web.xml 배포서술자(Deployment Descriptor)파일이란?(web.xml 작성방법)

2020. 10. 2. 17:38·노빠꾸 개발일지
반응형


web.xml 파일은 Tomcat과 같은 서블릿 컨테이너에 웹 애플리케이션을 배포하는 방법을 설명합니다.

 

이 파일은 Tomcat에 배포하는 모든 애플리케이션에 필요합니다.

 

파일의 위치는 항상 동일하며, application root / WEB-INF / web.xml에 위치하게 됩니다.

 

 

web.xml 파일의 태그는 <web-app>태그로 감싸져 있으며, 톰캣 버전별로 XSD, DTD선언이 조금씩 달라집니다.

 

1. 톰캣버전별 web.xml 예시

아래의 예시는 톰캣 버전별로 <web-app>태그의 버전예시입니다.

 

1) Tomcat 8.0

1
2
3
4
5
6
7
<?xml version="1.0" encoding=UTF-8?>
<web-app xmlns="http://java.sun.com/xml/ns/javaee"
     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
     xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_1.xsd"
     version="3.1">
 
</web-app>
Colored by Color Scripter
cs

 

2) Tomcat 7.0

1
2
3
4
5
6
7
8
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://java.sun.com/xml/ns/javaee"
      xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
      xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"
      version="3.0">
 
</web-app>
 
Colored by Color Scripter
cs

 

3) Tomcat 6.0

1
2
3
4
5
6
7
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://java.sun.com/xml/ns/j2ee"
     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
     xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
     version="2.5">
 
</web-app>
Colored by Color Scripter
cs

 

다음으로 몇가지 자주사용되는 태그들에 대해서 정리해보겠습니다.

 

2. 주요 태그 정리

1) <servlet> 태그

1
2
3
4
5
6
7
8
9
10
11
12
13
14
<!-- ========================================================== --> 
<!-- Servlets --> 
<!-- ========================================================== --> 
    
<servlet> 
    <servlet-name>Simple</servlet-name> 
    <servlet-class>SimpleServlet</servlet-class> 
    <description>This is a simple Hello World servlet</description> 
</servlet> 
<servlet-mapping> 
    <servlet-name>Simple</servlet-name> 
    <url-pattern>/servlet/SimpleServlet</url-pattern> 
</servlet-mapping> 
 
Colored by Color Scripter
cs

이 태그는 java서블릿 및 매개변수를 지정하는데 사용되는 컨테이너태그입니다.

InvokerServlet이 활성화되어 있지 않으면 서블릿을 직접 호출할 수 없으므로 Tomcat에 서블릿 호출시기를 알리려면

각 서블릿에 대해 하나 이상의 서블릿 태그 및 서블릿 매핑이 있어야 합니다.

 

 

2) <listener> 태그

1
2
3
4
5
6
7
8
<!-- ========================================================== --> 
<!-- Listeners --> 
<!-- ========================================================== --> 
 
<!-- Define example application events listeners --> 
<listener> 
    <listener-class>com.metawerx.listener.ContextListener</listener-class> 
</listener> 
Colored by Color Scripter
cs

웹 애플리케이션에 대한 리스너를 정의합니다.

 

리스너는 애플리케이션 또는 세션 이벤트와 같은 다양한 이벤트에 대한 알림을 받습니다.

 

3) <filter> 태그

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
<!-- ========================================================== --> 
<!-- Filters --> 
<!-- ========================================================== --> 
 
<!-- Example filter to set character encoding on each request (from Tomcat servlets-examples context) --> 
<filter> 
    <filter-name>Set Character Encoding</filter-name> 
    <filter-class>filters.SetCharacterEncodingFilter</filter-class> 
    <init-param> 
        <param-name>encoding</param-name> 
        <param-value>UTF-8</param-value> 
    </init-param> 
</filter> 
<filter-mapping> 
    <filter-name>Set Character Encoding</filter-name> 
    <url-pattern>/*</url-pattern> 
</filter-mapping> 
Colored by Color Scripter
cs

 

이 태그는 Java 필터와 매개변수를 지정하는데 사용되는 컨테이너 태그입니다.

 

서블릿 또는 JSP페이지가 호출되기 전에 필터가 실행되므로 최종 서블릿 / 페이지에 도달하기 전에 1개 이상의 필터를 체인 할 수 있습니다.

 

가장 큰 장점은 애플리케이션 외부에 있을 수 있으며 독립형 모듈이라는 것입니다.

 

4) <error-page> 태그

1
2
3
4
5
6
7
8
9
<!-- ========================================================== --> 
<!-- Error Handler --> 
<!-- ========================================================== --> 
 
<!-- Define an error handler for 404 pages --> 
<error-page> 
    <error-code>404</error-code> 
    <location>/error404.jsp</location> 
</error-page> 
Colored by Color Scripter
cs

사용자 지정 오류 페이지를 정의하는데 사용되는 컨테이너 태그입니다.

 

출처 - wiki.metawerx.net/wiki/Web.xml

 

web.xml Reference Guide for Tomcat - Metawerx Java Wiki

web.xml Reference Guide for Tomcat Introduction The web.xml Deployment Descriptor file describes how to deploy a web application in a servlet container such as Tomcat. This file is required for every application you deploy on Tomcat. You will find one in t

wiki.metawerx.net

 

반응형
저작자표시 (새창열림)

'노빠꾸 개발일지' 카테고리의 다른 글

[네이버 클라우드 플랫폼] 무료서버 사용하기(1년 무료)  (0) 2020.11.22
[Mac OS] 맥북 OpenSSL 설치  (0) 2020.11.02
[Tomcat] 톰캣에 War파일 배포하여 서버 실행하는 방법  (0) 2020.10.28
[Eclipse] 이클립스 Dynamic Web Module 버전 변경 방법  (0) 2020.10.27
[이클립스 플러그인 추천] Path Tools(경로복사, 경로 윈도우 폴더 오픈, 쉘스크립트 오픈)  (2) 2020.10.08
'노빠꾸 개발일지' 카테고리의 다른 글
  • [Mac OS] 맥북 OpenSSL 설치
  • [Tomcat] 톰캣에 War파일 배포하여 서버 실행하는 방법
  • [Eclipse] 이클립스 Dynamic Web Module 버전 변경 방법
  • [이클립스 플러그인 추천] Path Tools(경로복사, 경로 윈도우 폴더 오픈, 쉘스크립트 오픈)
No Backing
No Backing
노빠꾸
    300x250
  • No Backing
    누릇한 노빠꾸 블로그
    No Backing
  • 전체
    오늘
    어제
    • 분류 전체보기 (144)
      • 노빠꾸 서버 (20)
        • AWS (0)
        • 설치관련 (7)
        • 명령어 정리 (2)
        • 서버 설정 (8)
        • Nginx (2)
      • 노빠꾸 개발일지 (70)
        • JAVA (16)
        • JQUERY & JAVASCRIPT (10)
        • HTML5 (0)
        • SPRING (16)
        • Design Patterns (1)
        • DAUM API (1)
        • GIT (10)
        • Python (1)
        • SPRING SECURITY (1)
        • Vue (3)
      • 노빠꾸 데이터베이스 (9)
        • SQL (1)
        • ORACLE (3)
        • MySql (5)
      • 노빠꾸 일상 (13)
      • 노빠꾸 책 추천 (4)
      • 노빠꾸 경제 (20)
      • 노빠꾸 맥북 사용기 (7)
      • 노빠꾸 정보처리기사 정리 (1)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    MySQL 사용자 계정 생성
    깃허브 코파일럿
    WebSecurityConfigurerAdapter Deprecated
    스프링부트
    MySQL 데이터베이스 생성
    우분투 자바 설치
    JPA 쿼리 메소드
    맥북 사용 팁
    websecurityconfigureradapter란
    금융용어
    사이트맵
    티스토리 사이트맵 등록
    개인서버 추천
    맥북 단축키
    websecurityconfigureradapter 빈 등록
    리노드
    websecurityconfigureradapter 사용법
    WebSecurityConfigurerAdapter
    Linode
    스프링부트 JPA
    스프링부트 프로젝트
    주식용어
    리눅스 자바 설치
    경제용어
    스프링 시큐리티 5.7 버전이후 변경사항
    Spring boot
    스프링부트란
    스프링시큐리티 websecurityconfigureradapter
    인텔리제이
    websecurityconfigureradapter 변경사항
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
No Backing
web.xml 배포서술자(Deployment Descriptor)파일이란?(web.xml 작성방법)
상단으로

티스토리툴바