jpa2 Jpa 연관관계 정리 연관관계를 매핑한다? 일반적으로 DB에서 테이블의 연관관계를 매핑할 땐 외래키를 사용하고 양방향관계를 사용한다. select * from team t join member m on t.team_id = m.team.id; select * from member m join team t on m.team.id = t.team_id; 이와 같이 하나의 외래키로 양방향 매핑이 되어 양방향 조회가 가능하다. 하지만 ORM에서 객체는 참조를 사용하여 매핑하고 방향성이 존재한다. @Entity() @Table(name = "MEMBER") public class Member { @Id @Column(name = "id") @GeneratedValue(strategy = GenerationType.IDENTITY) p.. jpa 2022. 8. 22. ORM과 JPA 개념정리 ORM (Object Relation Mapping)란 무엇일까? 객체와 관계형 데이터베이스의 데이터를 자동으로 매핑해 주는 것을 말한다. database와 OOP를 둘 다 잘 알고 있어야 한다. 기존 database SQL을 직접 다룰 때의 문제점 코드의 반복이 발생함, 예를들어 insert into(...) ... 계속 반복 SQL에 의존적인 개발을 하게됨. 로직을 쿼리로 처리하게 되는 경우가 생김. 쿼리가 길어지면 가독성도 떨어지고 무엇보다 테스트를 하려면 쿼리를 날려야한다.. 유지보수성 - 테이블에 변경이 있다면, 연관된 모든 쿼리를 변경해줘야 함. 특정 db벤더사에 의존하게 됨. DB종류마다 약간 씩 문법도 다른 경우가 존재. 중간에 DB를 바꾸게되면 골치아픔. ORM과 RDB의 차이 ORM R.. jpa 2022. 8. 15. 이전 1 다음