develop/toy project

[인스타그램 클론] 2. 프로젝트 생성 및 DB 연동

아르르르를를르 2022. 6. 11. 18:07

1. 프로젝트 생성

간편하게 Spring Initializr 사용

 

패키지는 당장 생각나는 것만 추가하고 프로젝트를 생성했다.

 

2. DB 연동

docker-compose로 DB들을 띄우고

spring 프로젝트의 application.yml에 DB 메타정보를 입력한다.

spring:
  datasource:
    url: jdbc:mariadb://127.0.0.1:3306/instadb
    driver-class-name: org.mariadb.jdbc.Driver
    username: insta
    password: 1234
  jpa:
    open-in-view: false
    generate-ddl: true
    show-sql: true
    hibernate:
      ddl-auto: create

여기서 주의사항은 Docker 컨테이너로 실행된 mariadb에 접속해야 하므로 localhost가 아닌 127.0.0.1 (IP)로 적어야 한다.

그렇지 않으면 socket 통신을 하게 되어 다음 에러가 발생할 수 있다.

ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2)

 

(참고: In Unix based systems, MySQL will assume you want to use a socket if you connect to the host "localhost". Here you have a complete answer how to resolve this problem: serverfault.com/a/337928/467190 )

 

spring application 실행하여 연동 확인하고 db table 생성도 확인해준다.

spring application 실행하여 연동 확인

 

table 생성 확인

 

 

+) mongodb 연동은 아직인데, 다음 블로그글을 참고하면 좋겠다. 

 

[프로젝트3] 1. Spring Data MongoDB 시작하기 + MongoTemplate

MongoDB with spring-data-mongodb

velog.io

'develop > toy project' 카테고리의 다른 글

[인스타그램 클론] 1. 개발 환경 구축  (0) 2022.06.11