JPA/JPA 22

영속성 컨텍스트

영속성 컨텍스트 엔티티를 영구 저장하는 환경 영속성 컨테스트에 저장 EntityManager.persist(entity); // 1차 캐시에 저장, INSERT SQL 생성하여 쓰기 지연 SQL 저장소에 저장 엔티티 매니저를 통해서 영속성 컨텍스트에 접근 비영속 객체를 생성한 상태 Member member = new Member(); 영속 em.persist(member); 준영속 상태 em.detach(member); 삭제 em.remove(member); 영속성 컨텍스트의 이점 1차 캐시 - 동일성(identity) 보장 변경 감지(Dirty Checking) - 수정시 스냅샷을 통해 기존 엔티티와 비교하여 변경이 있는 경우 수정 쿼리 생성 지연 로딩(Lazy Loading) flush 영속성 컨텍스..

JPA/JPA 2020.06.09

객체와 관계형 데이터베이스의 차이

차이점객체와 관계형 데이터베이스의 차이 상속 연관관계(참조) - 참조 : PK, FK 객체는 단방향, DB는 양방향 데이터 조회 가능 JPA(Java Persistence API) 자바 진영의 ORM 기술 표준 Object-relational mapping(객체 관계 매핑) 객체는 객체대로 관계형 DB는 관계형 DB 대로 설계 ORM 프레임워크가 중간에서 매핑 - 패러다임의 불일치 해결 JPA 프로젝트 기본 구조 controller, web : 웹계층 service : 비지니스 로직, 트랜잭션 처리 - 대부분의 로직을 처리함 - 서비스 계층은 단순 엔티티에 필요한 요청을 위임하는 역할 repository : JPA를 직접 사용하는 계층, 엔티티 매니저 사용 domain : 엔티티가 모여 있는 계층, 모든..

JPA/JPA 2020.06.09