본문 바로가기
반응형

프로그래밍/JPA5

05장. 연관관계 매핑기초 개요 방향(direction): 단방향, 양방향 다중성(multiplicity): 다대일(N:1), 일대다(1:N), 일대일(1:1), 다대다(N:M) 연관관계의 주인(owner): 객체 관계를 주도하는 주인을 지정 단방향 연관관계 객체 연관관계 Member 객체는 Member.team 필드(멤버 변수)로 Team 객체와 연관관계를 맺는다. Member 객체와 Team 객체는 단방향 관계다. Member는 Member.team 필드를 통해서 Team을 알 수 있지만, 반대로 Team은 Member를 알 수 없다. Member member = repository.findOne(id); Team team = member.getTeam(); 테이블 연관관계 테이블은 외래 키(FK)로 연관관계를 맺음 MEMBE.. 2022. 1. 22.
04장. Entity Mapping 04장. Entity Mapping 개요 JPA를 사용하는데 가장 중요한 일은 엔티티와 테이블을 정확히 매핑하는 것이다. 따라서 매핑 어노테이션을 숙지하고 사용해야 한다. JPA는 다양한 매핑 어노테이션을 지원하는데 크게 4가지로 분류할 수 있다. 객체와 테이블 매핑: @Entity, @Table 기본 키 매핑 : @Id 필드와 칼럼 매핑 : @Column 연관관계 매핑 : @ManyToOne, @JoinColumn 4장에서는 객체와 테이블 매핑, 기본 키 매핑, 필드와 칼럼 매핑에 대해 알아보고 연관관계 매핑은 5, 6, 7장에 걸쳐서 설명한다. 매핑 정보는 XML이나 어노테이션 중에 선택해서 기술하면 되는데 책에서는 어노테이션만 사용하겠다. 각각 장단점이 있지만 어노테이션을 사용하는 쪽이 점 더 쉽고.. 2022. 1. 18.
03장. 영속성 관리 개요 JPA가 제공하는 기능은 크게 엔티티와 테이블을 매핑하는 설계부분과 매핑한 엔티티를 실제 사용하는 부분으로 나눌 수 있다. 3장 영속성 관리에서는 매핑한 엔티티를 엔티티 매니저를 통해 어떻게 사용되는지 보여준다. 개발자 입장에서 엔티티 매니저는 엔티티를 저장하는 가상의 데이터베이스로 생각하면 된다. 엔티티 매니저 팩토리와 엔티티 매니저 데이터 베이스를 하나만 사용하는 애플리케이션은 일반적으로 EntityMangerFactory를 하나만 생성한다. 엔티티 매니저 팩토리는 여러 스레드가 동시에 접근해도 안전하므로 서로 다른 스레드 간에 공유해도 되지만, 엔티티 매니저는 여러 스레드가 동시에 접근하면 동시성 문제가 발생하므로 스레드 간에 절대 공유하면 안 된다. 영속성 콘텍스트란? JPA를 이해하는데 가.. 2022. 1. 14.
02. JPA 시작 JPA 시작 H2 데이터베이스 특징 RDBMS 초경량DB, 인메모리 DB 지원. (테스트의 용도로 주로 사용된다. 굳이 사용하려면 캐싱의용도) H2v1.4.199설치경로 H2 및 ch02-jpa-start1 프로젝트 테스트시 오류.. 맥os에서 H2 tcp연결이 안될경우, tcp(소) -> TCP(대문자) 로 변경. Table 'Member'not found 에러발생시, persistence에서 주석 해제로 임시 테스트 가능.(인메모리와 비슷한 느낌)(관련내용) 객체 매핑 CREATE TABLE MEMBER ( ID VARCHAR(255) NOT NULL, --아이디(기본 키) NAME VARCHAR(255), --이름 AGE INTEGER NOT NULL, --나이 PRIMARY KEY (ID) ) .. 2022. 1. 11.
반응형