JPA 관련 웹 애플리케이션 제작 과제를 진행하던 중 JPA 쿼리 동작 방식의 이해도가 낮아서 애플리케이션 제작에 어려움을 느끼고 이를 해결하고자 인프런에서 김영한님의 ORM 강의를 공부하며 그 내용들을 기록하고자 한다.영속성 컨텍스트는 엔티티 매니저를 통해서 접근할
JPA를 활용해 엔티티를 정의할 때 기본키를 @Id로 정의하고 @GeneratedValue를 통해 자동생성 기능을 이용하는데 나는 지금까지 단순하게위와 같은 방식을 이용해왔는데 이 방식은 그렇게 좋지 못한 방법이란 걸 알게되었다.그 이유는 저 방식은 제약조건의 네이밍이
양방향 매핑은 두 객체가 서로 참조해야 하는 상황에서 정의하는 연관관계 방식이다.실제로는 각각의 단방향 매핑이 존재하는 것이며 이를 합쳐 양방향을 의미한다.양방향 매핑을 할 때에는 아래와 같이 반드시 한쪽의 객체에 MappedBy 옵션을 설정해야 한다.만약 양방향 매핑
이전 포스팅에서 말했듯이 양방향 매핑에서 테이블의 입력이나 수정등은 주인 객체만이 가능하다.그렇기 때문에 위의 예제처럼 주인 객체가 아닌 객체에 연관관계를 설정하게되면 외래키에 값이 들어가지 않게된다.그렇기 때문에 꼭 관계설정은 주인객체를 통해 해야한다.하지만 순수한