development♥/[Java, Spring]

[spring] 스프링 프로젝트 폴더 구조 설명

리니❤ 2022. 10. 3. 09:00
반응형

Spring MVC 패턴의 스프링 프로젝트를 생성하면 자동으로 만들어지는 폴더와 파일들이 있는데

그것에 대해서 한번 알아보겠음

 

 

스프링 프로젝트의 폴더구조

 


1.  >src/main/java

.java 파일들이 있는곳임

스프링이 MVC패턴의 서블릿 구조를 잡아줘서 따로 서블릿을 만들필요는 없고 

스프링 구조에 맞게 파일들을 만들어 주면 됨

 

 

 

2.  >src>main>resources

자바클래스에서 사용하는 리소스를 보관하는 곳임

 -> DB연결을 위한 파일들을 넣어주면됨 mybatis-config.xml

->  mapper파일 - .xml파일

즉 자바파일 이외에 다른파일들을 넣어줌 

 

* mybatis-config.xml파일은
mybatis에서 사용될 DB를 연동하기 위한 설정값들과 mapper.xml을 등록하기 위한 xml

 

 

 

3. src > test

>src>test>java

>src>test>resources

 

위에서 설명한 두 폴더들과 역할은 같지만 여기서는 테스트를 위한 자바와 리소스를 보관하는 장소임

 

 

 

4.  >Maven Dependencies


 여기에 들어가면 메이븐에서 관리하는 라이브러리들이 쫙 뜸

 이 라이브러리들은 pom.xml 에서 자동으로 다운받은 라이브러리 폴더들이 뜨는건데 

메이븐 빌드툴을 사용함으로서 개발자가 직접 관리해주지 않아도되는 영역

 

 

 

 

5. >src

src>main

src>test

 

src폴더는 웹과 관련된 모든 자료들이 들어가는 루트 폴더임

- main 폴더안에 다 들어감

- test 폴더안에는 테스트 관련 문서들이 들어감

 

 

    (1) src>main>webapp>resources

           웹에 필요한 파일들이 들어가는데 css , js , img 파일들이 들어가있음

 

 

    (2)src>main>webapp>WEB-INF

           WEB-INF에는 보완이 중요한 파일들이 들어감(환경설정 문서들, 컴파일된 파일, 웹에 필요한 코드파일)

         ( 이 파일들은 외부 사용자가 접근할 수 없고 컨트롤러를 통해서 접근할 수 있는 폴더)

 

             

                  ① src>main>webapp>WEB-INF>classes

                    컴파일된 파일들이 보관됨

 

 

            ② src>main>webapp>WEB-INF>spring

                     스프링 환경설정 파일들이 보관됨(context)

 

 

            ③ src>main>webapp>WEB-INF>views

 

                    jsp , HTML 파일들이 보관됨

                    컨트롤러가 받는 URL이 이 폴더에 있는 파일들을 따라감

 

 

 

 

6.pom.xml

- 사용할 라이브러리들을 다운받을때 쓰는 파일

반응형