반응형
[Eclipse] Dynamic Web Project 프로젝트 구조
이클립스에서 서블릿/JSP 기반 웹 어플리케이션 프로젝트는 Dynamic Web Project이다.
1. 프로젝트 생성

Dynamic Web Project 생성창
- Project name : 프로젝트 이름
- Target runtime : 웹 어플리케이션을 실행할 서버
- Dynamic web module version : 서블릿 버전. 이클립스는 여기에 지정된 버전으로 소스 코드의 문법을 검사한다.

프로젝트 작업 디렉토리 설정
- Source folders on build path : Java 소스 폴더
- Default output folder : 컴파일 결과 출력 폴더

웹 모듈 정보 설정 - 웹 어플리케이션 배치 정보 설정
- Context root : 웹 어플리케이션 이름. 기본값은 프로젝트 이름이다. 서버에 자동 배치할 때 이 이름으로 폴더를 만들어 배치한다. 웹 브라우저에서 실행을 요청할 때 여기에 지정된 이름을 URL에서 사용한다.
- Content directory : 웹 콘텐츠 파일을 저장할 작업 폴더의 이름을 지정한다. 서버에 자동 배치할 때 이 폴더의 내용물을 서버의 배치 폴더로 복사한다. 폴더의 이름은 어떤 것이든 상관 없으나 협업 시 다른 개발자가 알아보기 쉽도록 가능한 기본 이름을 사용한다.
- Generate web.xml deployment descriptor : 웹 어플리케이션 배치 설명서 파일을 자동으로 생성하는 옵션이다. 프로젝트의 WEB-INF 폴더에 web.xml 파일이 자동으로 생성된다.
2. 프로젝트 구조

디렉토리 및 파일 | 설명 |
src | Java 소스 파일, 프로퍼티(.properties) 파일이 위치하는 디렉토리 |
build | 자바 클래스 파일(.class)이 위치하는 디렉토리 Project Explorer에서는 기본적으로 class 파일은 보이지 않게 숨기므로 안의 내용은 보이지 않는다. |
WebContent | HTML(.html), CSS(.css), JavaScript(.js), JSP, 이미지 파일 등의 웹 콘텐츠가 위치하는 디렉토리 웹 어플리케이션을 서버에 배치할 때 이 폴더의 내용물이 그대로 복사된다. |
WebContent/WEB-INF | 웹 어플리케이션 설정 관련 파일들이 위치하는 디렉토리 이 폴더에 있는 파일은 클라이언트에서 요청할 수 없다. |
WebContent/WEB-INF/web.xml | 웹 어플리케이션 Deployment Descriptor(배치 설명서, DD파일이라고도 함) 서블릿, 필터, 리스너, 매개변수, Welcome Pages 등의 웹 어플리케이션 컴포넌트 배치 정보를 작성한다. 서블릿 컨테이너는 클라이언트의 요청을 처리할 때 이 파일의 정보를 참고하여 서블릿 클래스를 찾거나 필터를 실행하는 등의 작업을 수행한다. |
WebContent/WEB-INF/lib | 자바 아카이브 파일(.jar)이 위치하는 디렉토리 |
META-INF 디렉터리에 대하여
'스프링4 코딩공작소' 라는 책으로 스프링에 대해 공부중에 있는데 src/main/resources 이하의 폴더인 META-INF에 대해 갑자기 궁금증이 생겨 찾아보았다. (평상시에는 아무 신경을 쓰지 않고 있었다...
yangbox.tistory.com
반응형