Spring MVC Project
Last updated
Last updated
Spring MVC Project의 구성은 다음 그림과 같다. Java EE Project보다 파일과 폴더가 더 늘어났다.
pom.xml은 Maven Framework의 설정 파일이다. Spring MVC Project는 기본 빌드 시스템으로 Maven Framework를 사용하며, 이를 위한 설정을 pom.xml에 작성할 수 있다.
src는 source 폴더로 build에 관여하는 파일들을 배치한다. src는 크게 세 가지로 구분한다.
main
- build에 포함될 코드를 보관하기 위한 폴더
test
- build에 포함되지 않는 테스트 코드를 보관하기 위한 폴더
webapp
만들어질 Web Application이 반드시 가져야 하는 상위 폴더
build 시 src/main의 내용이 /WEB-INF/classes 내부에 포함된다.
등록된 Source Directory는 총 네 개이며, 다음과 같다.
src/main/java
src/main/resources
src/test/java
src/test/resources
등록된 경로들은 classpath:
로 탐색이 가능하며, 설정을 통해 build 포함 여부를 정할 수 있다.
웹 애플리케이션 배포 시 실행하는 컨테이너가 적용해야 하는 설정, 라이브러리, 클래스 요소들이 배치된 폴더이다. 클래스의 경우 src에 있지만 build 과정에서 WEB-INF 내부의 classes 폴더로 이동한다.
웹 애플리케이션의 사양(운영 지침)을 명시한 설정파일. Spring 뿐 아니라 Java EE 스펙을 가진 애플리케이션이라면 반드시 존재해야 한다. Spring MVC Project에서는 web.xml
에 Core Servlet인 DispatcherServlet을 등록하여 사용할 수 있도록 구성되어 있으며, 각종 Spring 설정 파일에 대한 정보도 이곳에 등록되어 있다.
스프링 설정이 위치한 폴더
Spring 전역(Global) 설정 파일.
이 파일에서 설정한 내용들은 하위 요소인 servlet-context.xml
에서 사용 가능하다.'
Spring DispatcheServlet에 대한 설정 파일
요청에 대한 처리 내용을 작성한다.
라이브러리가 추가될 폴더. Maven Framework를 사용하므로 직접 추가하지 않고 pom.xml 설정을 통해 추가한다.
화면에 출력하기 위한 View(JSP) 파일이 존재하는 위치. 기본적으로 제공되는 home.jsp가 있으나 필수 코드가 없는 과거 버전이므로 사용하지 않는다.
Java 진영의 Logging Framework인 Log4j의 설정 파일이다.
Maven Build 수행 시 결과물이 저장되는 폴더이다. 시간이 저장되며 build 시 매번 변경되므로 Git과 같은 버전 관리 도구에서 충돌의 주요 원인이 된다. .gitignore
설정으로 업로드에서 제외한다.
자세한 작성 내용은 을 참조한다.