본문 바로가기
반응형

JPA4

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.
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.
01. JPA 소개 개요 & SQL을 직접 다룰때 발생하는 문제점. 관계형 데이터베이스를 사용하는 자바 애플리케이션 개발 시, SQL을 통한 데이터 처리는 매우 지루하고, 반복적인 작업이 되었다. 이에 생산성을 높이기 위한 방법으로 Mybatis(SQL은 직접 작성하나, 맵핑을 위한 편리한 방법을 지원함)나 스프링의 JDBC 같은 SQL매퍼를 사용해 코드를 많이 줄일 수 있었지만, 코드 작성뿐 아니라, 유지보수의 측면에서는 여전히 문제가 발생하였다. 테이블에 새로운 필드가 추가될 경우.. 아래와 같은 구조의 Member 테이블이 존재하고, Member테이블에 email필드 추가 시 발생하는 유지보수성 작업 예시. public class Member { private String memberId; private String .. 2022. 1. 8.
반응형