Spring Boot & MySQL
1.2. 개발 환경 설정
backend 따라쟁이
2024. 12. 22. 22:38
Spring Boot와 MySQL을 사용하여 애플리케이션을 개발하려면 기본적인 개발 환경을 설정해야 합니다. 이 섹션에서는 필요한 도구와 설정 방법을 단계별로 안내합니다. 초보자도 따라 할 수 있도록 자세히 설명하겠습니다.
2.1 필요한 도구 및 설치
Spring Boot와 MySQL 연동을 위해 다음 도구들이 필요합니다:
1. Java JDK
- 필요 버전: Java 8 이상 (Spring Boot 3.x를 사용하는 경우 Java 17 이상 권장)
- 설치 방법:
- Oracle 공식 사이트 또는 OpenJDK에서 Java JDK를 다운로드합니다.
- 설치 후 환경 변수를 설정합니다.
- Windows: JAVA_HOME 변수에 JDK 설치 경로를 추가하고 PATH에 %JAVA_HOME%\bin을 추가합니다.
- Mac/Linux: .bashrc 또는 .zshrc 파일에 export JAVA_HOME=/path/to/jdk와 export PATH=$JAVA_HOME/bin:$PATH를 추가합니다.
- 설치 확인:
java -version
2. MySQL
- 필요 버전: MySQL 5.7 이상
- 설치 방법:
- MySQL 다운로드 페이지에서 설치 파일을 다운로드합니다.
- 설치 과정에서 루트 사용자(root)의 비밀번호를 설정합니다.
- MySQL 실행 확인:
mysql -u root -p
- 데이터베이스 생성:
CREATE DATABASE my_database;
3. IDE (통합 개발 환경)
- 추천 도구:
- Eclipse: Eclipse 다운로드
- IntelliJ IDEA: IntelliJ 다운로드
4. Maven 또는 Gradle
- Spring Boot 프로젝트 빌드 도구로 Maven이나 Gradle 중 하나를 사용합니다.
- 기본적으로 Maven을 사용할 것을 권장합니다.
2.2 Spring Boot 프로젝트 생성
Spring Boot 프로젝트를 생성하는 방법은 두 가지입니다: Spring Initializr를 사용하는 방법과 IDE 내부에서 생성하는 방법입니다.
1. Spring Initializr를 이용한 생성
- Spring Initializr 웹사이트 접속: Spring Initializr
(그림) Spring Initializr - 프로젝트 설정:
- Project: Maven 또는 Gradle
- Language: Java
- Spring Boot Version: 최신 안정 버전 선택 (예: 3.1.0)
- Dependencies:
- Spring Web
- Spring JDBC
- MySQL Driver
- Packaging: Jar
- Java Version: JDK 버전에 맞게 선택 (예: 17)
- Generate 버튼 클릭: 설정 완료 후 프로젝트를 다운로드합니다.
- 다운로드한 프로젝트를 IDE에서 열고 필요한 의존성을 자동으로 다운로드합니다.
2. IDE를 통한 생성
- Eclipse 또는 IntelliJ IDEA에서 새 Maven 프로젝트를 생성합니다.
- pom.xml 파일에 다음 의존성을 추가합니다:
- Maven을 업데이트하여 의존성을 다운로드합니다:
- Eclipse: Right-click on the project > Maven > Update Project
- IntelliJ: File > Sync
2.3 application.properties 설정
Spring Boot 애플리케이션이 MySQL 데이터베이스와 통신하려면 application.properties 파일을 설정해야 합니다.
설정 예제:
src/main/resources/application.properties 파일을 열고 다음 내용을 추가합니다:

# 데이터베이스 연결 설정 spring.datasource.url=jdbc:mysql://localhost:3306/my_database spring.datasource.username=root spring.datasource.password=yourpassword spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver # Hibernate 설정 spring.jpa.hibernate.ddl-auto=update spring.jpa.show-sql=true # UTF-8 설정 (한글 깨짐 방지) spring.datasource.hikari.connection-init-sql=SET NAMES utf8mb4 |
설정 설명:
- spring.datasource.url: MySQL 서버의 주소와 사용할 데이터베이스 이름.
- spring.datasource.username / spring.datasource.password: MySQL 사용자 정보.
- spring.jpa.hibernate.ddl-auto: 테이블 생성 정책 (update, create, validate, none 중 선택).
- spring.jpa.show-sql: 실행되는 SQL 쿼리를 콘솔에 출력.
- UTF-8 설정: MySQL의 한글 처리 문제를 해결하기 위해 사용.
2.4 한글 깨짐 문제 해결
application.properties에서 UTF-8 설정을 추가하는 것 외에도, MySQL의 기본 인코딩을 확인하고 변경해야 합니다.
MySQL UTF-8 설정
- MySQL 설정 파일 열기:
- Windows: my.ini
- Mac/Linux: /etc/my.cnf
- 다음 내용을 추가 또는 수정:
[mysqld]
character-set-server=utf8mb4
collation-server=utf8mb4_general_ci
[client]
default-character-set=utf8mb4 - MySQL 재시작:
sudo service mysql restart
- 데이터베이스의 인코딩 확인:
SHOW VARIABLES LIKE 'character_set%';
2.5 프로젝트 실행 확인
- Spring Boot 애플리케이션 실행:
- Eclipse: Run > Run As > Spring Boot App
- IntelliJ: Run > Run 'Application'
- 실행 로그에 아래 메시지가 표시되면 성공적으로 설정된 것입니다:
Tomcat started on port(s): 8080
결론
이 섹션에서는 개발 환경을 설정하는 데 필요한 모든 단계를 다뤘습니다:
- JDK와 MySQL 설치 및 설정.
- Spring Boot 프로젝트 생성 및 의존성 추가.
- application.properties 파일을 통해 MySQL 연동 설정.
- 한글 깨짐 문제를 해결하기 위한 UTF-8 설정.
다음 섹션에서는 JDBC를 사용하여 MySQL 데이터베이스와 상호작용하는 방법을 알아보겠습니다.