반응형
오늘 겪은 따끈한 에러입니다.
Spring boot로 웹앱 제작 중, 요즘 대세라는 yml 파일로 설정을 시도하였습니다.
그런데 ddl-auto(테이블이 존재하지 않을 경우 자동으로 생성해 주는 기능) 설정을 create로 해 두었음에도
ddl-auto가 적용되지 않아 이런저런 문제를 확인하던 중 mappin value에 이상이 있다는 것을 알게 되었습니다.
문제는 의외로 whitespace에 있었는데요, 파이썬으로 코딩할 때 빼고는
그냥 tab을 눌러서 하위개념을 설정하곤 했는데 tab이 문제가 되었던 겁니다~~
구글링하다가 yaml syntax 문서를 보고 알게 되었는데, 우선 yaml syntax 링크입니다. --> 링크
yaml로 yml 파일 생성 시,
하위값을 설정할 때는 스페이스를 '두 번' 입력합니다. 하위의 하위 개념에는 하위개념에서 추가로 스페이스를 '두 번'
더 입력합니다(2단계라면 도합 4개)
그리고 키:(스페이스)값 의 형태로 입력합니다.
즉, 아래의 예시와 같이 기재되어야 yml 파일이 인식됩니다.
위는 yaml syntax에 맞추어 작성한 버전, 아래는 공백을 별로 표현하여 시각적으로 보이게 한 설명버전입니다.
1
2
3
4
5
6
7
8
9
10
11
|
spring:
datasource:
driver-class-name: com.mysql.cj.jdbc.Driver
<< 공백을 ☆로 표기한 설명 >>
spring:
☆☆datasource:
☆☆☆☆driver-class-name:☆com.mysql.cj.jdbc.Driver
|
cs |
그래서 아래와 같이 application.yml 파일을 수정하니 auto ddl이 인식되어 테이블이 자동으로 생성되었습니다.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
|
spring:
datasource:
driver-class-name: com.mysql.cj.jdbc.Driver
url: jdbc:mysql://localhost:3306/DB명?serverTimezone=UTC&characterEncoding=UTF-8
username: mysql유저아이디
password: mysql유저비밀번호
jpa:
database-platform: org.hibernate.dialect.MySQL5InnoDBDialect
open-in-view: false
show-sql: true
hibernate:
format_sql: true
ddl-auto: create
-- 이하 생략 -- |
cs |
다 맞게 입력을 했는데 왜 에러가 나지? 했는데
역시 컴파일러는 잘못이 없고 새로운 걸 섣부르게 시도한 저의 탓입니다^_^
반응형
'Developments' 카테고리의 다른 글
200828 TIL: Python - SMTP를 이용한 메일 발송 (0) | 2020.08.28 |
---|---|
Hibernate ddl-auto 설정 (0) | 2020.08.18 |
200814 Spring Security 구현 (0) | 2020.08.14 |
200811 Spring MVC를 이용한 블로그 시스템 1.0 (0) | 2020.08.11 |
200806 TIL: Spring 예외처리(ExceptionHandler, ControllerAdvice) (0) | 2020.08.06 |