[Spring] 디렉터리 구조
[Spring] 디렉터리 구조
IDE : STS
(JDK와 STS는 설치가 되어있다는 가정하에 시작)
1. 프로젝트 생성
Package Explorer 에서 오른쪽 마우스 클릭하면 해당 화면을 볼수있습니다.
New -> Spring Legacy Project 를 선택합니다.
(일반적인 Spring Framework 프로젝트로 별도의 Maven 작업없이 Maven을 사용할수있게 구성해준다.
^.^; 더 상세한건 찾아봐야 알겠지만...)
프로젝트명을 입력하고 MVC Project를 선택합니다.
(MVC - Model View Controller)
package 명을 입력한다.
(어플리케이션을 구분하는 고유한 값으로 다른 앱들과 구분하는 역할로 유일무이해야한다.)
(ex - com.회사이름.프로그램이름)
생성후 확인 가능한
기본적인 디렉토리구조입니다.
2. 디렉터리 구조
2-1 src/main/*
src/main/java |
controller, model, 비지니스 로직과 관련된 실제 구동시에 사용되는 java 코드들을 작성합니다. |
src/main/resources |
mapper.xml, log등 리소스 관련 코드들이 있는 곳 입니다. |
(resources와 관련된 부분은 프로젝트 진행하면서 추후에 계속 정리해야될듯 ㅠ)
2-2 src/test/*
test용도로 쓰는 용도로 프론트쪽이 완료되지 않았을때 mapper나 controller 등 테스트 할때 사용 가능합니다.
2-3 jar
JRE System Library |
maven으로 제공되지 않는 외부 jar파일을 build path 잡아서 쓰는 경우 |
Maven Dependencies |
라이브러리 관리도구(pom.xml 과 관련) |
2-4 view와 project 설정 관련 xml
src/main/webapp/resources |
js, image, css 등 관리 |
src/main/webapp/WEB_INF/classes |
컴파일된 클래스 |
src/main/webapp/WEB-INF/spring/root-context.xml |
비지니스로직과 밀접한 관계 |
src/main/webapp/WEB-INF/spring/appServlet/servlet-context.xml |
view와 밀접한 관계 |
src/main/webapp/WEB-INF/views |
html, jsp 파일 |
pom.xml |
maven 과 밀접한 관계(라이브러리 추가) |
src/main/webapp |
외부 접근 가능 |
src/main/webapp/WEB-INF |
외부접근 불가, 컨트롤러를 경유해서 접근 가능 |
WEB-INF 폴더
컴파일된 클래스와 스프링 환경설정파일(ex - DB연결정보)가 존재
JSP 또한 외부 접속시 수정되는 것을 막기 위해 보안상 외부 접근이 금지된 폴더
maven 로컬 저장소
C:\Users\사용자계정\.m2\repository
pom.xml에서 라이브러리 추가후 제대로 서버 작동이 안되거나할때 해당 폴더를 삭제 후
프로젝트를 다시 빌드하거나 하면된다.