Spring Boot & JPA
2.2. 프로젝트 준비
backend 따라쟁이
2024. 12. 26. 23:15
1. Spring Initializr를 사용한 프로젝트 생성
Spring Initializr는 Spring Boot 기반 프로젝트를 빠르게 생성할 수 있는 도구입니다. 이번 프로젝트에서는 Spring Initializr를 사용하여 RESTful API와 MySQL 데이터베이스 연동을 위한 기본 템플릿을 생성했습니다.
설정 방법
- Spring Initializr 웹사이트에 접속합니다.
- 아래와 같이 프로젝트 설정을 진행합니다:
- Project: Maven
- Language: Java
- Spring Boot Version: 최신 안정 버전 (예: 3.1.0)
- Group: com.example
- Artifact: RestfulApiJpa
- Name: RestfulApiJpa
- Dependencies:
- Spring Web: RESTful API 개발을 위한 기본 의존성
- Spring Data JPA: JPA와 데이터베이스 연동
- MySQL Driver: MySQL 데이터베이스와 연결
- Java 버전은 17 이상을 권장합니다.
- "Generate" 버튼을 클릭하여 프로젝트를 다운로드합니다.
- 다운로드한 ZIP 파일을 압축 해제한 후, IDE(예: IntelliJ IDEA, Eclipse)에서 프로젝트를 열어 작업을 시작합니다.
2. Maven 의존성 추가
Spring Initializr에서 프로젝트를 생성하면 pom.xml 파일에 필요한 의존성이 기본적으로 포함됩니다. 그러나 추가로 필요한 경우, 아래와 같이 pom.xml에 의존성을 수동으로 추가할 수도 있습니다:
pom.xml 예제

3. MySQL 데이터베이스 설정
MySQL 데이터베이스와 연동하려면 application.properties 또는 application.yml 파일에 데이터베이스 정보를 설정해야 합니다.
application.properties 예제

설명
- spring.datasource.url: MySQL 서버의 주소와 사용할 데이터베이스 이름을 설정합니다.
- spring.datasource.username: MySQL 사용자 이름.
- spring.datasource.password: MySQL 사용자 비밀번호.
- spring.jpa.hibernate.ddl-auto: 데이터베이스 테이블 자동 생성 옵션 (update는 기존 테이블을 유지하면서 필요한 변경 사항만 적용).
- spring.jpa.show-sql: 실행되는 SQL 쿼리를 콘솔에 출력합니다.
4. 데이터베이스 준비
- MySQL에 접속하여 프로젝트에서 사용할 데이터베이스를 생성합니다:
CREATE DATABASE restful_api_db;
- Spring Boot 애플리케이션 실행 시, JPA 설정에 따라 데이터베이스 테이블이 자동 생성됩니다.
5. 프로젝트 디렉터리 구조
Spring Boot 프로젝트는 기본적으로 다음과 같은 디렉터리 구조를 갖습니다:

6. 애플리케이션 실행
프로젝트 준비가 완료되면 Spring Boot 애플리케이션을 실행할 수 있습니다:
- RestfulApiJpaApplication 클래스에서 main 메서드를 실행합니다.
- 애플리케이션이 성공적으로 시작되면, API 서버가 http://localhost:8080에서 실행됩니다.
결론
이 단계에서 우리는 Spring Boot와 MySQL을 연동하기 위한 기본적인 설정을 완료했습니다. 이제 다음 단계에서는 Entity, Repository, Service를 정의하고 본격적으로 API를 구현합니다. 이번 준비 과정을 통해 프로젝트의 기반을 튼튼히 다질 수 있었습니다.