start.spring.io -> 스프링 프로젝트 생성

Maven, Gradle
: 빌드 관리 도구(빌드 자동화 도구)
우리가 프로젝트에서 작성한 java 코드와 프로젝트 내에 필요한 각종 xml, properties, jar 파일들을 JVM이나 WAS가 인식할 수 있도록 패키징 해주는 빌드 과정
프로젝트 생성, 테스트 빌드, 배포 등의 작업을 위한 전용 프로그램이라 할 수 있다.
애플리케이션 개발에 필요한 다양한 외부 라이브러리들을 다운로드하고, 해당 라이브러리를 사용하여 개발해야하는 상황이 많다.
이 때 각 라이브러리들을 번거롭게 모두 다운받을 필요없이, 빌드도구 설정파일에 필요한 라이브러리 종류와 버전들, 종속성 정보를 명시하여
필요한 라이브러리들을 설정파일을 통해 자동으로 다운로드 해주고 이를 간편히 관리해주는 도구
Maven
Maven은 Java용 프로젝트 관리도구로 Apache의 Ant 대안으로 만들어졌다.
빌드 중인 프로젝트, 빌드 순서, 다양한 외부 라이브러리 종속성 관계를 pom.xml파일에 명시한다.
Maven은 외부저장소에서 필요한 라이브러리와 플러그인들을 다운로드 한다음, 로컬시스템의 캐시에 모두 저장한다.

import > existing maven projects -> 메이븐 프로젝트 가져오기
src/main/java 모든 소스 파일 보관
src/main/resources 모든 설정 파일 보관
src/test/java 테스트 코드 작성