현 시대 대부분의 어플리케이션들은 객체지향 언어를 사용해 개발되고 또 관계형 DB를 사용해 데이터를 영속화한다.객체지향적인 설계와 개발이 주는 장점은 매우 크고, 그렇기 때문에 어플리케이션을 개발 할때 객체지향적인 개발의 중요성은 항상 강조되어왔다. 그리고, 관계형 D
JPA 는 Java Persistence API 의 준말로 자바 진영의 ORM 기술 표준이다. 앞선 포스팅에서 ORM 에 대해서 설명했지만 추가적으로 말하자면 ORM 은 Object-Relational Mapping 의 준말로 말그대로 객체와 관계형 데이터베이스 사이를
이번 포스팅에서는 JPA를 사용해보도록 하겠다.우선, 관계형 DB가 필요할 테니 선호하는 DB를 설치하도록 하자.(포스팅에서는 H2 DB를 사용합니다) 그리고 JPA 는 앞서 말했듯이 인터페이스이다. 사용하기 위해서는 구현체가 필요한데, 가장 많이 사용되는 JPA 구현
영속성컨텍스트(Persistence Context) 앞선 포스팅에서 JPA 가 동작하는 과정에서 EntityMangerFactory 와 EntityManager 가 생성되는 과정을 살펴보았다. 해당 과정을 이미지화해서 보자면 다음과 같다. 그리고 DB에 영속화하기
앞선 포스팅들을 통해 JPA 의 내부구조와 동작흐름에 대해 알아보았다.그럼 이제, JPA 를 사용해서 실제 RDB와는 어떤식으로 매핑되는지에 대해 알아보도록 하자. JPA를 통해 관리할 객체에 붙이는 어노테이션이다. 기본생성자가 필수적인데, 사용하게 되는 JPA 구현체
엔티티와 엔티티의 필드들이 어떤식으로 매핑되는지에 대해 알아보았다. 하지만 앞선 포스팅에서 다루지 않은 부분이 있는데 그것은 객체가 연관관계를 다루는 법과, RDB가 연관관계를 다루는 방법의 차이다. 객체와 연관관계 객체에서는 연관관계를 어떻게 표현하는가? 바로, 참
자바 ORM 표준 JPA 프로그래밍 - 김영한 책 내용을 정리한 내용입니다.챕터5 - 연관관계 매핑 기초 5.1 단방향 연관관계5.2 연관관계 사용 객체는 참조를 사용해서 관계를 맺고, 테이블은 외래키 를 사용해서 관계를 맺는다.이런 차이점이 객체 연관관계와 테이블 연
자바 ORM 표준 JPA 프로그래밍 - 김영한책 내용을 정리한 내용입니다.챕터5 - 연관관계 매핑 기초5.3 양방향 연관관계5.4 연관관계의 주인5.5 skip5.6 양방향 연관관계의 주의점 5.7 skip양방향 연관관계 ? 관계를 맺는 객체가 서로에 대한 접근이 가능
자바 ORM 표준 JPA 프로그래밍 - 김영한책 내용을 정리한 내용입니다.6.1 다대일6.2 일대다 엔티티 연관관계 매핑시 고려해야할 것다중성단방향, 양방향연관관계의 주인연관관계가 있는 엔티티가 일대일 관계인지 일대다 관계인지 다중성을 고려하고,엔티티 중 한쪽만 참조하
JPA 는 많은 기능을 지원한다. 객체간 서로 참조를 하는 부분도 양방향 연관관계를 잘 사용만 하면 큰 문제 없이 사용할 수 있다. 하지만 이런 방법을 잘 사용하는게 최선이라고는 할 수 없다. 객체간의 관계가 복잡해지면, 사용하는 입장에서 관계들을 이해하는게 어려울 수