profile
구준희 하자

[JPA] Batch Insert

성능 향상을 위해서 Batch Insert를 도입했다. 그 과정을 정리하기 위해서 작성한다.Batch Insert는 여러 개의 Insert를 묶어서 하나의 트랜잭션으로 묶는 것을 말한다.JPA 에서는 내부적으로 쓰기 지연 SQL 저장소를 이용한다. 커밋을 하기 전까지

2022년 5월 25일
·
0개의 댓글
·

@Transactional 과 PROXY

@Transactional에는 Spring AOP의 Proxy방식이 사용된다. 그렇기 때문에 우선 Proxy에 대해서 알아보자.Spring에는 크게 두 가지 프록시 구현체를 사용한다. JDK PROXY(=Dynamic PROXY) 와 CGLib이다. Spring AOP

2022년 4월 17일
·
0개의 댓글
·

7. 임베디드 타입

int, Integer, String 처럼 단순히 값으로 사용한느 자바 기본 타입이나 객체식별자가 없고 변경시 추적이 불가능함@Entity 로 정의하는 객체데이터가 변해도 식별자로 추적 가능복합 값 타입JPA 는 Embedded Type 이라고 함주로 기본 값 타입을

2022년 2월 12일
·
0개의 댓글
·

6. 프록시와 지연로딩

A 테이블에 수백개의 테이블이 연관되어 있다고 가정해보자. 만약 A 테이블을 조회한다면 A 와 연관된 테이블들을 모두 가져올 것이고, A 와 연관된 테이블들과 연관된 테이블들도 가져오려고 할 것이다.우리는 우리에게 필요한 A 만 찝어서 가져오는 로직이 필요하다!JPA

2022년 2월 12일
·
0개의 댓글
·

5. 상속 매핑

설계를 하다보면 상속관계가 필요한 경우가 생긴다. 상위 클래스 '책' 과 '만화책', '소설책' 같은 상속관계는 RDB로 어떻게 표현해야 할까?RDB 에는 상속관계가 존재하지 않는다. 대신, 슈퍼타입과 서브타입 관계라는 모델링 기법이 객체의 상속과 유사하기 떄문에 이를

2022년 2월 12일
·
0개의 댓글
·

4. 연관관계 매핑

객체지향 설계의 목표는 객체들간의 협력 공동체를 만드는 것이다.FK 로 연관된 테이블의 PK 를 참조시킨다.FK 에 @JoinColumn(name = "...") 로 설정할 수 있다.테이블 관점에서의 양방향 연관관계하나의 외래 키로 두 테이블의 연관관계를 관리하는 것사

2022년 2월 11일
·
0개의 댓글
·

3. 매핑

APP 실행 시 DDL 이 자동 생성된다.hibernate.hbm2ddl.auto 를 이용해 속성을 설정할 수 있다create : 기존 테이블 삭제 후 생성create-drop: create 와 같으나 종료 시점시 table dropupdate: 변경분만 반영 (운영D

2022년 2월 11일
·
0개의 댓글
·

2. 영속성 컨텍스트

JPA의 가장 핵심적인 내용 중 한가지는 바로 엔티티를 영구 저장하는 환경인 영속성 컨텍스트 이다.물리적인 개념이 아닌 논리적인 개념이다. JPA를 사용하면 엔티티 매니저를 통해 영속성 컨텍스트에 접근하게 된다.비영속 (new/transient) : 영속성 컨텍스트

2022년 2월 11일
·
0개의 댓글
·

1. JPA ?

Java Persistence API자바 진영의 ORM 기술 표준Object-relational mapping(객체 관계 매핑)객체는 객체대로 설계 RDB 는 RDB 대로 설계하고 ORM 프레임워크가 중간에서 매핑한다.어플리케이션은 하나의 엔티티 매니저 팩토리를 전체에

2022년 2월 11일
·
0개의 댓글
·