스프링 프로젝트를 막 생성한 시점의 프로젝트 구조이다.
각 디렉토리와 파일들에 대해 알자보자
src/main/java 디렉토리
com.sbb.springBoard 는 자바 파일을 작성하는 패키지이다. 스프링부트의 컨트롤러, 폼과 DTO, 데이터 베이스 처리를 위한 엔티티, 서비스 파일등이 들어가는 공간이다.
SpringBoardApplication 파일은 프로젝트 생성시 함께 생성되는 파일이다. <프로젝트 명> + Application 으로 파일명이 만들어지고, 프로그램의 시작을 담당하는 파일이다. 다시말해, 프로젝트를 실행시키면 해당 파일이 가장 먼저 실행된다.해당 파일의 클래스에는 항상 @SpringBootApplication 애너테이션이 적용되어 있어야 한다.
src/main/resources 디렉토리
자바 파일을 제외한 HTML, CSS, Javascript, 환경파일 등을 작성하는 공간이다.
/templates 디렉토리에 템플릿 파일을 저장한다. 템플릿 파일은 HTML 파일 형태로 자바 객체와 연동되는 파일이다.
/static 디렉터리는 프로젝트의 스타일시트(.css), 자바스크립트(.js) 그리고 이미지 파일(.jpg, .png) 등을 저장하는 공간이다.
application.properties 파일은 프로젝트의 환경을 설정한다. 프로젝트의 환경, 데이터베이스 등의 설정을 이 파일에 저장한다. (환경 셋팅 과정에서 포트 번호를 이곳에서 변경하였다.)
src/test/java 디렉토리
프로젝트에서 작성한 파일을 테스트하기 위한 테스트 코드를 작성하는 공간이다. JUnit과 스프링부트 내의 테스팅 도구를 사용해서 서버에 접속하지 않고 작성한 코드를 (데이터 흐름을) 테스트 할 수 있다.
build.gradle 파일
그레이들 (Gradle) 프로젝트에서 사용하는 환경 파일이다. 그레이들은 그루비(Groovy)를 기반으로 한 빌드 도구로 Ant, Maven과 같은 이전 세대 빌드 도구의 단점을 보완하고 장점을 취합하여 만든 빌드 도구이다. build.gradle 파일에는 프로젝트를 위해 필요한 플러그인과 라이브러리 등을 기술한다.
(Maven과 Gradle 의 차이가 궁금하다면)
그 외의 것들은 크게 중요하지 않아 설명을 생략한다.
(자세한 코드가 궁금하다면)
https://github.com/ChooJG/springProject
GitHub - ChooJG/springProject: 스프링부트 web-board 프로젝트 (JPA, H2-console)
스프링부트 web-board 프로젝트 (JPA, H2-console). Contribute to ChooJG/springProject development by creating an account on GitHub.
github.com
'[SpringBoot]' 카테고리의 다른 글
[SpringBoot] 컨트롤러 (1) | 2023.11.26 |
---|---|
Live Reload 설정하기 (intelliJ) (0) | 2023.11.25 |
[SpringBoot] 스프링부트 초기 설정 (IntelliJ) (1) | 2023.11.25 |