
Package Explorer를 보게 되면 생성한 프로젝트의 폴더 구조를 확인 할 수 있는데요.
오늘은 이 폴더들에 대해서 알아보는 시간을 가져보겠습니다.
💻src/main/java
- Java Source 폴더로 등록되어 있습니다.
- 개발된 .java파일들이 보관되는 폴더입니다.
- MVC프로젝트의 패키지 구조가 만들어지는 곳입니다.
- 백엔드 개발이 이루어지는 곳입니다.
💻src/main/resources
- Java Source폴더로 등록되어 있습니다.
- 자바 프로그램 개발에 필요한 자원들을 보관하는 폴더입니다.
- 라이브러리와 관련된 설정 파일(ex_ .xml)들을 보관합니다.
💻src/test/java
💻src/test/resources
- 단위 테스트용 소스코드와 자원을 포괄하는 폴더입니다.
💻Maven Dependencies
- 메이븐으로 추가한 라이브러리를 보여주는 곳입니다.
- 사용자 폴더에 있는 .m2 라이브러리 로컬 저장소 폴더와 연결되어 있습니다.
- 프로젝트에 작성한 pom.xml파일의 설정 항목에 영향을 받습니다.
💻JRE System Library
- Java Runtime Environment라이브러리입니다.
💻Server Runtime
- Tomcat Server실행 환경 라이브러리입니다.
- servlet-api.jar, jsp-api.jar를 포함시켜줍니다.
💻src
- src/main/webapp 디렉토리에 속하는 파일들입니다.
- Web에 관련된 자원들이 담겨있는 루트 폴더입니다.
- 빌드를 하게 되면 main 내 파일들이 패키징 됩니다.

💻src/main/webapp/resources
- 웹에 필요한 다양한 자원(image, html, js 등)을 보관하는 곳입니다.
💻src/main/webapp/WEB-INF/classes
💻src/main/webapp/WEB-INF/spring
- 스프링에서 사용되는 외부 컨텍스트를 설정합니다.
- 웹 어플리케이션과 관련된 컨텍스트 설정 정보를 등록합니다.
💻src/main/webapp/WEB-INF/views
- MVC패턴에서 사용되는 View(JSP파일)들을 보관하는 폴더입니다.
💻src/main/webapp/WEB-INF/web.xml
- 프로젝트가 웹 서버로 배포될 때 필요한 설정을 적어두는 파일입니다.
- 요청과 응답에 관련된 웹 서버 설정 항목을 넣습니다.
💻target
- 자바 소스코드(.java)에 대한 컴파일 결과물(.class)이 모이는 폴더입니다.
- 서버로 배포되기 전 파일들이 모이는 곳입니다.
💻pom.xml
- 메이븐(MAVEN) 도구의 설정 파일입니다.
- <dependency> 태그를 이용하여 설정합니다.
이상으로 폴더 구조에 대한 설명을 마칩니다 :)