728x90
반응형
프로젝트를 만들다 보면 항상 발생하는 이 오류... 도대체 어디서 항상 발생하는건지 문제를 직접 이해하고 다음에는 이 문제가 발생하지 않도록 설정해보려고 한다.
예외에서는 항상 entityManagaer관련 예외가 발생한다.
내 yml 설정은 아래와 같다.
spring:
messages:
basename: messages
encoding: UTF-8
datasource:
driver-class-name: com.mysql.cj.jdbc.Driver
url: jdbc:mysql://localhost:3306/[DB이름]?serverTimezone=Asia/Seoul
username: [Id]
password: [Password]
jpa:
properties:
hibernate:
dialect: org.hibernate.dialect.MySQL8Dialect
show_sql: true
format_sql: true
hibernate:
ddl-auto: update
아직 이 코드 이외에 구현한게 없으니 분명 여기서 발생한 문제일텐데 원인을 찾아보자.
내 문제의 원인은 너무 간단해서 허무했다.
application-locl.yaml로 만들었더니 yaml파일을 tomcat이 인식하지 못하는 문제였다.
application.yaml으로 이름을 변경하였더니 잘 작동하였다.
여러개의 yaml파일을 만들어서 보기 좋게 구분하고 싶다면 아래와 같이 사용하면 된다.
local이라는 이름의 yaml에 다른 것들을 포함하여 사용하는 방식이다.
spring:
profiles:
group:
"local" : "local, jwt, oauth, email, redis"
active : local
그 외의 원인들은 아래와 같은 문제가 있을 수 있다.
1. yaml의 url에서 오타를 확인하자 url을 uri로 적은 경우도 많았고 :이나 //을 잘못 적은 경우도 많이 봤다.
2. yaml의 들여쓰기도 꼭 확인하자. 내부 속성을 하나씩 들어갈때 마다 들여쓰기를 꼭 해줘야 한다.
3. mysql port 서버가 일치하는지 확인하고 잘 작동하는지 확인하자
그 외에도 다양한 문제들이 있을 수 있으니 차근차근 하나씩 해결하다보면 성공할 것이다.
728x90
반응형
'Spring > JPA' 카테고리의 다른 글
save the transient instance before flushing (0) | 2024.11.20 |
---|---|
@Where Deprecated되고 새로 쓰이는 @SQLRestriction (1) | 2024.11.20 |
JPA - 지연로딩과 즉시로딩 (1) | 2023.12.10 |
JPA - Proxy (2) | 2023.12.10 |
JPA - MappedSuperClass (0) | 2023.12.10 |