본문 바로가기
기타/백엔드 기초

스트링부트 | 스프링부트 프로젝트 구조

by YUNI Heo 2023. 5. 2.
반응형

 

✅ 스프링부트 프로젝트 구조

  • 규모를 갖춘 프로젝트를 만들고자 한다면 프로젝트 구조를 잘 이해해야 한다. 

 

✅ src/main/java 디렉터리

💡 com.mysite.sbb 패키지

  • 자바 파일을 작성하는 공간이다. 
  • 자바 파일로는 HelloController와 같은 스프링부트의 컨트롤러, 폼과 DTO, 데이터 베이스 처리를 위한 엔티티, 서비스 파일 등이 있다.

 

💡 SbbApplication.java 파일

  • 스프링부트 애플리케이션의시작을 담당하는 파일이다.
  • <프로젝트명> + Application.java 파일이다.
  • 스프링부트 프로젝트를 생성할때 "Sbb"라는 이름을 사용하면 SbbApplication.java 파일을 자동으로 생성한다.
  • SbbApplication 클래스에는 @SpringBootApplication 애너테이션이 적용되어야 한다. 
    • @SpringBootApplication 애너테이션: 스프링부트의 모든 설정을 관리한다.

 

✅ src/main/resources 디렉터리

  • 자바 파일을 제외한 HTML, CSS, Javascript, 환경파일 등을 작성하는 공간이다.

 

💡 templates 디렉터리

  • 템플릿 파일을 저장한다.
  • 템플릿 파일은 HTML 파일 형태로 자바 객체와 연동되는 파일이다.
  • SBB의 질문 목록, 질문 상세 등의 HTML 파일을 저장한다.

 

💡 static 디렉터리

  • SBB 프로젝트의 스타일시트(.css), 자바스크립트(.js) 그리고 이미지 파일(.jpg, .png) 등을 저장하는 공간이다.

 

💡 application.properties 파일

  • SBB 프로젝트의 환경을 설정한다.
  • SBB 프로젝트의 환경, 데이터베이스 등의 설정을 이 파일에 저장한다.

 

✅ src/test/java 디렉터리

  • SBB 프로젝트에서 작성한 파일을 테스트하기 위한 테스트 코드를 작성하는 공간이다.
  • JUnit과 스프링부트의 테스팅 도구를 사용하여 서버를 실행하지 않은 상태에서 src/main/java 디렉터리에 작성한 코드를 테스트한다.

 

✅ build.gradle 파일

  • 그레이들(Gradle)이 사용하는 환경 파일이다. 
  • 그레이들은 그루비(Groovy)를 기반으로 한 빌드 도구로 Ant, Maven과 같은 이전 세대 빌드 도구의 단점을 보완하고 장점을 취합하여 만든 빌드 도구이다. 
  • build.gradle 파일에는 프로젝트를 위해 필요한 플러그인과 라이브러리 등을 기술한다.

 

반응형