2019/10/10

객체 관계 매핑(ORM)에서 가장 어려운 부분이 객체 연관관계와 테이블 연관관계를 매핑하는 일이다. 연관관계를 매핑할 때 다음 3가지를 고려해야 한다. 방향(Direction) [단방향, 양방향] 존재 회원, 팀 관계가 있을 때 회원 → 팀 또는 팀 → 회원 둘 중 한 쪽만 참조한다면 단방향 회원 → 팀, 팀→ 회원 양쪽 모두 서로 참조하는 것은 양방향 관계 방향은 객체관계에만 존재하고, 테이블은 항상 양방향 다중성(multiplicity) [다대일(N:1), 일대다(1:N), 일대일(1:1), 다대다(N:M)] 존재 회원, 팀 관계가 있을 때 여러 회원은 한팀에 속하므로 회원 : 팀 = N : 1 한팀에 여러 회원에 속하므로 팀 : 회원 = 1 : N 연관관계의 주인(owner) 객체를 양방향 연관관계..
Table에 추가적인 데이터를 Json 문자열로 저장하기 위해, JPA Converter를 이용하려고한다. 즉, 서비스단에서는 bean으로 사용을하고, DB에 저장될 때는 이 bean을 Json 문자열로 자동 파싱하여 저장하기 위해서이다. 일단 샘플로 Student 클래스를 만들자 @Entity @Getter @Setter public class Student { @Id private String key; private String name; private int age; private AdditionalData additionalData; } Student는 추가데이터(additionalData)를 갖고 있으며, 이 데이터는 additionalData라는 컬럼에 Json 형태로 들어갈 것이다. @Get..
깡냉쓰
'2019/10/10 글 목록