인프런 영문 브랜드 로고
인프런 영문 브랜드 로고

인프런 커뮤니티 질문&답변

Kyeongseok Ko님의 프로필 이미지
Kyeongseok Ko

작성한 질문수

실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발

수업 자료

hbm2ddl 를 이용해 테이블 생성시 컬럼 순서 수정 방법

해결된 질문

작성

·

3.9K

3

안녕하세요? 영한님? 질문있어 문의드립니다..

현재 JPA로 초반 개발해보면서,

초기 테이블 생성을 hbm2ddl = create 를 이용해서 진행하고 있습니다.

테이블을 생성시, 이게 알파벳 순으로 컬럼 순서를 자동 정렬해버리드라구요. ㅠㅠ

자바 소스내에서 entity 내 자바파일내  커스텀하게 순서를 변경할 수 있는 방법이 있을지 궁금합니다. (구글링 해보니, 없다. 커스텀하게 바꿔라 하는데 .. 잘 이해가 안되서 게시판에 올렸습니다 )

답변 부탁드릴께요..
감사합니다.

답변 4

8

김영한님의 프로필 이미지
김영한
지식공유자

안녕하세요. Kyeongseok Ko님^^

사실 저도 처음 JPA를 사용할 때 이것 때문에 고민을 좀 했었는데요. 아쉽지만 현재로써는 단순하게 해결할 수 있는 방법은 없습니다. 하이버네이트의 DDL 생성 부분을 깊이있게 코드 레벨로 파서 어떻게 해결하면 될 수는 있겠으나 권장하지는 않습니다.

그런데 사실 이 문제는 크게 고민하지 않으셔도 됩니다. 정말 이게 중요했다면 기능으로 제공을 했겠지요?

왜냐하면 하이버네이트가 자동으로 생성해주는 DDL은 신뢰성이 떨어지기 때문에 절대로! 운영DB 환경에서 그대로 사용하면 안되고, 직접 DDL을 작성하는 것을 권장합니다.(또는 생성된 DDL을 검토하고 수정해서 사용하시면 됩니다.)

추가로 로컬 PC에서 CREATE 모드를 사용할 때는 컬럼 순서가 영향을 주는게 없기 때문에(보기 좋은 것 빼고) 그냥 이대로 사용하시면 됩니다.

감사합니다.

2

김영한님의 프로필 이미지
김영한
지식공유자

네 또 궁금하신 내용이 있으면 언제든지 편하게 질문주세요^^

1

추가로 궁금한점이 있습니다~

알파벳 순으로 생성하면서, 객체와 연관된 부분은 제일 뒤쪽에서 생성되는것도 맞을까요?

김영한님의 프로필 이미지
김영한
지식공유자

안녕하세요. 마술이님 순서는 보장되지 않습니다.

감사합니다.

1

Kyeongseok Ko님의 프로필 이미지
Kyeongseok Ko
질문자

친절한 답변 감사드려요 ㅠㅠ

Kyeongseok Ko님의 프로필 이미지
Kyeongseok Ko

작성한 질문수

질문하기