DevBoi

[Spring-boot] JPA - mysql 연동 및 테스트 본문

Develop

[Spring-boot] JPA - mysql 연동 및 테스트

HiSmith 2021. 7. 5. 03:22
반응형

h2로, 간략하게테스트 할수도있지만 

h2는 단순 테스트 용이니니까 실제 db를 사용해서 테스트를 해보자

 

 

우선 저번에 db 연결 및 , 스키마 생성(db1까지 완료했다.)

이제 스프링 쪽 설정 파일을 변경해주어야 한다.

 

우선 이런식으로 yaml파일을 수정해준다.

1. database-platform : mysql 이나 마리아 오로라 등등을 선택해준다.

그리고 dialect에 대한 설정이 있는데, 이건 방언이라고 하는데, db와 쿼리가 각자 달라서, 다른 경우에도 ORM이 되도록 설정해주는 것이다.

2. show-sql : sql 로깅, debug처럼 출력이된다.

3.open-in-view : 영속성 관계를 보장해준다. service ~ repo 까지의 관계에서

해당 트랜잭션을 보장해준다. 쉽게 말해서, 트랜잭션이나 가지고있는 컨텍스트의 변수가

on이면, intercepter 에서 ~ repo까지, 

off이면, service ~ repo 까지이다.

4. ddl-auto : true

ddl -auto 의 기능은 JPA가 처음 구동시 @Entity 의 객체를 불러서, 로드하는데,

해당 관련된 설정이다.

 

 

  • none - 실행하지 않음
  • create-drop - 어플리케이션이 구동되고 Session이 시작될때 drop -> create 이 실행되고, Session이 종료될때 (어플리케이션 종료) drop
  • create - 어플리케이션이 구동되고 Session이 시작될때 drop -> create 이 실행
  • update - 스키마가 변경된 경우에만 실행
  • validate - 변경여부 확인 후 출력, 어플리케이션은 종료

 

쉽게말해, 객체에 해당하는 테이블에 대한 설정이다. 구동시에, create하면, drop 하고 다시만들고, 

있다면, 변경사항만 update한다. (거의 실무에서는 update만 쓸듯 하다.)

 

무튼 설정까지 기본적으로 마쳤다.

 

다음에는 간단한 소스로, 흐름 정도 익히고, 실제 적용사례를 공부해보자

반응형