blog
[Spring Boot] JPA 테이블 대문자 본문
Table명을 대문자로 지정하였는데, @Table에서 대문자로 지정해줬음에도 불구하고
해당 테이블을 찾지 못하고 새로 테이블을 만든다.
(create table은 spring.jpa.hibernate.ddl-auto=update 설정을 해주었기 때문)
찾아보니 Hibernate의 네이밍전략때문에 그렇다.
https://docs.spring.io/spring-boot/docs/current/reference/html/howto.html#howto.data-access.configure-hibernate-naming-strategy
기본적 Spring Boot 물리적 명명 전략은 CamelCaseToUnderscoresNamingStrategy 이다.
1. 점(.) -> 언더바
2. 카멜케이스 -> 언더바
3. 모든 테이블 이름은 소문자로 생성
물리적 변수명과 동일하게 사용하기위해 application.properties에 설정을 추가하였다.
spring.jpa.hibernate.naming.physical-strategy = org.hibernate.boot.model.naming.PhysicalNamingStrategyStandardImpl
'Web > SpringBoot' 카테고리의 다른 글
[Java] StringBuilder로 JSON value를 만들 때 주의점 (0) | 2022.09.14 |
---|---|
[Spring Boot] JPA @Query (0) | 2022.03.23 |
[Spring Boot] JPA 설정 (0) | 2022.03.23 |
[Spring boot] JPA batch insert/update (0) | 2022.03.20 |
[Spring Boot] json 파일 읽어서 API 만들기 (0) | 2022.03.16 |