기본적인 세팅을 완료했으면 Mysql연동을 진행해 볼게요.
https://chanho0912.tistory.com/4
여기까지 완료하신 분이라면
group = 'com.StudyProject'
version = '0.0.1-SNAPSHOT'
sourceCompatibility = '11'
repositories {
mavenCentral()
}
dependencies {
implementation 'org.springframework.boot:spring-boot-starter-web'
implementation 'org.projectlombok:lombok'
implementation 'com.h2database:h2'
implementation 'mysql:mysql-connector-java'
implementation 'org.springframework.boot:spring-boot-starter-data-jpa'
developmentOnly 'org.springframework.boot:spring-boot-devtools'
testImplementation 'org.springframework.boot:spring-boot-starter-test'
}
test {
useJUnitPlatform()
}
dependencies에 Mysql Connector를 추가해줍니다.
추가로 Mysql을 사용하면서 대부분 JPA를 같이 사용할 것이기 때문에 JPA dependencies도 추가해 줍니다.
저 같은 경우에는 윈도우에서 진행하고 있어서 workbench의 도움을 받습니다.
workbench 사용하시는 분이라면
새로 Mysql 서버 하나 local호스트:3306에 만들어 줍니다.
저 같은 경우는 임시로 chanho-blog-project로 이름을 지어서 만들어 주었습니다.
새로 연결해 주셨으면 다음 sql문을 실행해 줍니다.
create user 'username'@'%' identified by 'xxxx';
GRANT ALL PRIVILEGES ON *.* TO 'username'@'%';
CREATE DATABASE blog CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;
use blog;
show variables like 'c%';
기본적으로 username 하나 설정해 주시고,
해당 username에게 모든 권한을 부여해 줍니다.
Database명은 진행하시는 프로젝트 명에 맞게 맞추어 만들어 주시면 될 것 같습니다. 저는 blog로 진행하였습니다.
보시는 바와 같이 마지막 query까지 실행되었을 때 database가 utf8로 설정되어있으면 성공적으로 되었습니다. 추가로 use blog까지 확인을 해주시면 됩니다.
자 그러면 application.properties에서 설정을 해줍시다.
기본적으로 프로젝트의 src / main / application.properties 파일에 다음과 같이 설정해 줍니다.
spring.profiles.include=real-db
spring.jpa.properties.hibernate.dialect=org.hibernate.dialect.MySQL57InnoDBDialect
spring.session.store-type=jdbc
# Mysql
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
spring.datasource.url=jdbc:mysql://localhost:3306/[your database name]?serverTimezone=Asia/Seoul&characterEncoding=UTF-8
spring.datasource.username=[your username]
spring.datasource.password=[your password]
# JPA
spring.jpa.hibernate.ddl-auto=create
spring.jpa.generate-ddl-auto=true
spring.jpa.show_sql = true
# Logging
logging.level.org.springframework.web=DEBUG
* 추가로 Mysql 5.7 버전을 사용 중입니다.
여기까지 설정해 주시고,
정상적으로 App이 빌드되면 정상적으로 Mysql이 연동된 것입니다.
*저의 글에 대한 피드백이나 지적은 언제나 환영합니다.
'Backend > Spring' 카테고리의 다른 글
[Spring] Spring, Postman을 통해 Http통신 테스트 (0) | 2021.06.25 |
---|---|
[SpringBoot] 블로그 프로젝트 #0 Github 연동하기 (0) | 2021.06.24 |
[Spring] PSA란? (0) | 2021.06.24 |
[Spring] AOP란? (1) | 2021.06.23 |
[Spring/SpringBoot] 코드로 확인하는 Dependency Injection (0) | 2021.06.22 |