Spring 2

[Java/Hibernate] PK 전략방식 그리고 안됐던 내용 정리

안녕하세요. spring + H2 DB를 가볍게 사용하여 회사 내부에 사이드 프로젝트를 진행하고 있습니다. 기능을 만들고 이제 데이터를 넣어보자! 하는 상황에서 발생한 문제점입니다. 현재 H2 DB 2.1.214 버전을 사용하고 있는데 PK 전략이 정상적으로 동작하지 않는 것 같았으나 알고보니 단순히 제가 다른 구성컬럼에 유니크 속성을 걸어둔 문제였습니다.. 이 기회에 작성해두는 PK 전략방식! # IDENTITY 전략 @Id @GerneratedValue(strategy = GenerationType.IDENTITY) private Long Id; IDENTITY 전략은 기본 키 생성을 데이터베이스에 위임하는 전략입니다. 이 전략은 주로 MySQL, PostgreSQL, SQL Server 에서 사용합..

[JAVA/JPA] JPA.. 이름만 들어봤다!! 이제라도 알자..

업무를 진행하면서 Spring 을 사용하는 것이 처음이라 생소한 것들이 많다. 이전에는 순수 자바 1.7 + 서블릿 + MyBatis 를 사용했기에 모르는 내용이 많아 최근 들어 공부를 진행하고 있다. 하지만 업무는 날 기다려주지 않고, 코드리뷰 진행 시 내가 모르는 부분에 대해 질문했고, 이에 대한 답변으로 들었던 내용을 모르고 이를 뒷받침하는 JPA 영속성 컨텍스트를 모르기 때문에 찾아봤다. 질문: 분명 save(), commit(), flush() 라는 코드를 명시적으로 작성하지 않았는데 데이터가 왜 업데이트 된건가요? 답변: 그건 Entity Manager 가 처리해줘서 그래요! 라고 답변을 받았다. 너무나 쇼킹했고 더 궁금해서 자료를 찾았는데 이 또한 김영한 님의 JPA 강의를 듣고 작성한 것 ..

IT/프로그래밍 2021.07.28
반응형