본문 바로가기

onetoone2

[TypeORM] One-to-one relations https://orkhan.gitbook.io/typeorm/docs/one-to-one-relations OneToOne 관계는 A가 오직 하나의 B 인스턴스를 가진다. 그리고 B는 오직 하나의 A 인스턴스를 가진다. 다음 예시는 User와 Profile의 관계이다. User는 하나의 Profile을 가지고 하나의 Profile은 하나의 User를 가진다. import { Entity, PrimaryGeneratedColumn, Column } from "typeorm" @Entity() export class Profile { @PrimaryGeneratedColumn() id: number @Column() gender: string @Column() photo: string } import { E.. 2023. 9. 3.
[JPA] 테이블 연관관계 정리 ORM 사용 이유 객체의 참조 방식과 관계형 DB의 연관관계는 다르다. 예를 들어 Table의 외래값을 그대로 객체로 옮긴다면 **Id 형태의 필드를 선언하지만 객체의 개념에서 다른 객체를 참조하는 개념은 아니다. 물론 Id값을 이용하여 조회하는데 사용할 수는 있지만, 객체지향 프로그래밍답지 않다. 따라서 테이블의 외래키 대신 참조 값을 넣고 어노테이션을 이용하여 테이블의 연관관계를 정의하는 것이다. 프로그래밍을 할 때는 OOP처럼 코드를 작성하되, DB에 저장할 때는 외래키로 매핑해주는 것이다. 객체 A와 B가 있다면 A에서 B로의 참조, B에서 A로의 참조를 가질 수 있다. 다만 테이블의 경우에는 한쪽 테이블에 외래키가 존재하는 경우 A테이블로 B를 JOIN, B테이블로 A를 JOIN하므로 방향을 가.. 2023. 8. 6.