
JPA는 특정 데이터에비스에 종속 X각각의 데이터베이스가 제공하는 SQL 문법과 함수는 조금씩 다름 가변문자 : MySQL은 VARCHAR, Oracle은 VARCHAR2 문자열을 자르는 함수 : SQL 표준은 SUBSTRING(), Oracle은 SUB

영속성 컨텍스트의 변경 내용을 데이터베이스에 반영플러시 발생변경 감지수정된 엔티티 쓰기 지연 SQL 저장소에 등록쓰기지연 SQL 저장소의 쿼리를 데이터베이스에 전송(등록, 수정, 삭제 쿼리)영속성 컨텍슽트를 플러시하는 방법em.flush() - 직접 호출트랜잭션 커밋

영속성 컨텍스트는 논리적인 개념눈에 보이지 않는다.엔티티 매니저를 통해서 영속성 컨텍스트 접근객체와 관계형 데이터베이스 매핑하기영속성 컨텍스트JPA를 이해하는데 가장 중요한 용어“엔티티를 영구 저장하는 환경” 이라는 뜻EntityManager.persist(entity
create : 데이터베이스, 테이블등을 생성alter : 테이블을 수정관계형 데이터베이스 관리 시스템(RDBMS)의 관리 하에 이미 존재하는 개체의 특성을 변경하는 데이터 정의 언어(DDL) 명령컬럼명을 바꾸는데 사용drop : 데이터베이스, 테이블을 삭제trunca
@Entity가 붙은 클래스는 JPA가 관리, 엔티티라 한다.JPA를 사용해서 테이블과 매핑할 클래스는 @Entity 필수주의기본 생성자 필수(파라미터가 없는 public 또는 protected 생성자)final클래스, enum, interface, inner 클래스

자바 enum 타입을 매핑할 때 사용주의! ORDINAL 사용XORDINALenum 순서를 데이터베이스에 저장STRINGenum 이름을 데이터베이스에 저장날짜 타입을 매핑할 때 사용LocalDate, LocalDateTime을 사용할때는 생략 가능(최신 하이버네이트 자

@Id@GeneratedValue자동 생성(@GeneratedValue)IDENTITY : 데이터베이스에 위임, MYSQLSEQUENCE : 데이터베이스 시퀀스 오브젝트 사용, ORACLE@SequenceGenerator 필요TABLE : 키 생성용 테이블 사용, 모

방향 : 단방향, 양방향다중성 : 다대일 , 일대다, 일대일, 다대다연관관계의 주인 : 객체 양뱡향 연관관계는 관리 주인이. 필요객체지향 설계의 목표는 자율적인 객체들의 협력 공동체를 만드는 것이다.객체를 테이블에 맞추어 데이터 중심으로 모델링하면 , 협력 관계를 만들

다대일 : @ManyToOne정말 많이 사용일대다 : @OneToMany일대일 : @OneToOne가끔 사용다대다 : @ManyToMay실무에서 쓰면 안된다테이블외래 키 하나로 양쪽 조인 가능사실 방향이라는 개념이 없음객체참조용 필드가 있는 쪽으로만 참조 가능한쪽만 참

관계형 데이터베이스는 상속관계 X슈퍼타입 서브타입 관계라는 모델링 기법이 객체 상속과 유사상속관계 매핑 : 객체의 상속과 구조와 DB의 슈퍼타입 서브타입 관계를 매핑슈퍼타입 서브타입 논리 모델을 실제 물리 모델로 구현하는 방법각각 테이블로 변환 -> 조인전략통합 테이블

엔티티 타입@Entity로 정의하는 객체데이터가 변해도 식별자로 지속해서 추적 가능값 타입Int, Integer, String 처럼 단순히 값으로 사용하는 자바 기본타입이나 객체식별자가 없고 값만 있으므로 변경시 추적 불가기본값 타입자바 기본 타입(int, double

JPQLJPA CriteriaQueryDSL네이티브 SQLJDBC API 직접사용, My Basis, SpringJdbcTemplate 함께 사용가장 단순한 조회 방법EntityManager.find()객체 그래프 탐색(a.getB().getC())JPA를 사용하면 엔
.(점)을 찍어 객체 그래프를 탐색하는 것상태 필드 : 단순히 값을 저장하기 위한 필드연관 필드 : 연관관계를 위한 필드단일 값 연관 필드 @ManyToOne, @OneToOne, 대상이 엔티티컬렉션 값 연관 필드 @OneToMany, @ManyToMany, 대상이 컬

em.find() vs em.getReference()em.find() : 데이터베이스를 통해서 실제 엔티티 객체 조회em.getReference() : 데이터베이스 조회를 미루는 가짜(프록시) 엔티티 객체 조회실제 클래스를 상속 받아서 만들어짐실제 클래스와 겉 모양이
실무에서 엄청 중요함 페치 조인 SQL 조인 종류 X JPQL에서 성능 최적화를 위해 제공하는 기능 연관된 엔티티나 컬렉션을 SQL 한 번에 함께 조회 하는 기능 Join fetch 명령어 사용 페치 조인 :: = [ LEFT [OUTER] | INNER ] JO