본문 바로가기

JPA

(11)
JPA 연관관계 매핑 1. 단방향 양방향 연관관계 이해하기 단방향과 양방향 연관관계 연관관계 매핑 기초용어 방향 : 단방향, 양방향 다중성: 일대일, 일대다, 다대다, 다대일 연관관계 주인: 객체 양방향 연관관계는 주인이 필요하다 단방향 매핑 JPA에서 단방향 매핑은 JoinColumn과 One(Many) ToOne(Many)를 통해 할 수 있다. Member 클래스 필드의 Team을 보면 Team과 일대일(OneToOne)으로 매핑을 한 것이다. @Entity @NoArgsConstructor(access = AccessLevel.PROTECTED) @Getter public class Team { @Id @GeneratedValue @Column(name = "team_id") private Long id; private String teamName; } @..
JPA 엔티티 매핑: DB 스키마 자동 생성, 필드와 칼럼 매핑, 기본키 매핑 엔티티 매핑 엔티티 매핑 객체와 테이블 매핑: @Entity, @Table 필드와 칼럼 매핑: @Column 기본키 매핑: @Id 연관관계 매핑: @ManyToOne, @JoinColumn @Entity(name="text") JPA에서 사용할 엔티티 이름을 지정한다. 기본값으로 Class 이름을 사용한다. @Table 엔티티와 매핑할 테이블을 지정한다. 속성 기능 기본값 name 매핑할 테이블 이름 엔티티 이름을 사용 catalog 데이터베이스 catalog 매핑 schema 데이터베이스 schema 매핑 uniqueConstraints(DDL) DDL 생성 시 유니크 제약 조건 생성 @Entity @Table(name = "BOX") // 테이블이 BOX로 만들어 진다. public class Ite..
JPA와 JPA 영속성 컨텍스트, 플러시와 준영속 상태 JPA Java Persistence API로 자바 진영의 ORM 기술 표준이다. 객체와 관계형 데이터베이스 간의 패러다임의 불일치를 해결해준다. ORM Object-relational mapping의 약자로 말 그대로 객체 관계 매핑 기술이다. 객체와 관계형 DB를 중간에서 매핑해주는 기술이다. JPA 동작 JPA는 JAVA Application과 JDBC 사이에서 동작하여 Entity 분석, SQL 생성, 패러다임 불일치 등의 작업을 수행해준다. JDBC 자바에서 데이터베이스에 접속할 수 있도록 하는 API이다. JPA를 사용하면 객체 중심적인 개발이 가능하고, 생산성, 유지보수 측면에서도 유리하며 패러다임의 불일치를 해결해준다. 영속성 관리 영속성 콘텍스트 JPA에서 가장 중요한 2가지는 ORM과 ..