JunsuLime / spring-cloud-native-explorer

Spring cloud explorer
1 stars 0 forks source link

Spring JPA 및 datasource 설정을 하자. #48

Open JunsuLime opened 2 years ago

JunsuLime commented 2 years ago

spring 관련 기본설정은 이를 참고하자. https://docs.spring.io/spring-boot/docs/current/reference/html/application-properties.html

spring.jpa.properties.*: Additional native properties to set on the JPA provider. 이는 어디서 확인할지 알아보자.

https://stackoverflow.com/questions/27420513/what-is-a-jpa-provider

Several implementations of that specification exist, the main are:

  • EclipseLink
  • Hibernate
  • OpenJPA
  • DataNucleus

이 중에서 Hibernate 를 jpa provider 를 사용하기 때문에 이의 properties 를 알아보자.

테스트 대상인 프로젝트는 5.1 버전을 사용하고 있다. https://docs.jboss.org/hibernate/orm/5.1/userguide/html_single/Hibernate_User_Guide.html

5.1 문서를 참고하여 값을 설정하도록 하자.

datasource connection pool 라이브러리로는 hikari 를 사용하고 있다. 관련 설정 값들을 볼 수 있는 문서를 찾아보자.

https://github.com/brettwooldridge/HikariCP#frequently-used

JunsuLime commented 2 years ago

test 를 위한 h2 설정 http://www.h2database.com/html/features.html 이걸 보기전에 test 를 위한 설정은 TestDatabaseAutoConfiguration 를 참고하도록!!

원래는 h2 를 MODE=MySQL 로 돌리려했지만, 너무 많은 커스터마이즈가 필요할듯 이렇게 하면서까지 얻는 이득이 너무 적다. 다른 사람이 코드파악에 어려움을 겪을 수 있음

embedded db 로 spring 은 H2, DERBY, HSQL 를 지원하며, test db 로 사용됨 class loading 이 되는 요소를 후보로 뽑아서 사용합니다.

현재 testRuntimeOnly 로 h2 를 등록해놔서 h2 를 사용하고 있는 것이다.