본문 바로가기
Programming/Java_Spring

JPA namingstrategy

by 곰네Zip 2022. 8. 30.

JPA에서 사용될 DTO는 컬럼명과 일치시키기 위해 대문자를 _로 변경해주도록 되어있다.

@Entity
public myClass{
 private String myID;
 private String myId;
 private String userName;
}

뭐... 위에처럼 클래스가 선언되었으면.. 맵핑은

myID -> my_i_d

myId -> my_id

userName -> user_name

이런식으로..

만약 이걸 따르지 않겠다고 한다면

네이밍 전략을 바꿔줄수 있다.

application.yml (or properties)에..

우선 yml기준으로 작성

spring:
   jpa:
      hibernate:
         naming:
            physical-strategy: org.hibernate.boot.model.naming.PhysicalNamingStrategyStandardImpl

위와 같이 설정해주면 대문자를 underscore로 변환하는 일은 해주지 않는다.

아니면 명식적으로 컬럼명을 지정해줄 수 있다.

@Entity
public myClass{
 @Column(name="myID")
 private String myID;
 @Column(name="myId")
 private String myId;
 @Column(name="userName")
 private String userName;
}

설정을 잘 알면 더 유용하게 쓸 수 있을듯..

반응형

댓글