전체 글196 13. 엔티티 연관 매핑 시작에 앞서 해당 강의는 코드 위주로 진행됩니다. 실질적인 객체 처리를 담당하는 코드는 링크에서 확인하시길 바랍니다. * 연관 엔티티와 엔티티 간 연결 엔티티가 다른 엔티티를 필드 / 프로퍼티로 참조 MembershipCard 엔티티는 User 엔티티를 필드로 가지고 있다. * 연관 종류 1-1 : 참조키 방식 단 방향, 양 방향 단 방향 : a -> b로만 연관 양 방향 : a b 연관 1-1 : 키 공유 방식 단 방향, 양 방 N-1 : 단 방향 1-N : 콜렉션 단 방향 N-1/1-N : 양 방향 M-N : 단 방향, 양 방향 * 기초 영상에서 다룰 범위 다룰 대상 1-1 연관 단방향 N-1 단방향 1-N 단방향 다루지 않음 양방향 M-N연관 참고 엔티티 간 연관은 거의 사용하지 않음 특히 양방향은 더 없음, .. 2023. 3. 25. Section 2 - Unit 4 : [네트워크] 웹 애플리케이션 작동원리 Review Review 에서는 학습한 내용을 다시금 기록합니다. Unit Review는 학습한 내용 중 기존에 알고 있었지만 정확하게 이해하지 못하던 정보와 새롭게 알게된 정보를 기록합니다. 추가적인 설명을 요하는 부분은 댓글로 남겨주세요. Section Review는 전반적인 Section을 되돌아보고 학습했던 시간과 과정, 내용을 총괄하여 기록합니다. 네트워크를 만드는 기술 * TCP / IP 기본 - LAN과 WAN 유/무선에 관계 없이 라우터에 연결 되어있지 않다면 네트워크에 연결할 수 없다. 좁은 범위에서 연결된 네트워크를 LAN(Local Area Network)라고 부른다. 동네의 네트워크를 생각하면 된다. 이런 LAN들이 모여 세계의 네트워크를 구성하는 WAN(Wide Area Network)가 구성.. 2023. 3. 24. 12. 영속 컨텍스트 & 라이프사이클 해당 강의는 코드 위주로 진행됩니다. 실질적인 객체 처리를 담당하는 코드는 링크에서 확인하시길 바랍니다. * 영속 객체와 영속 컨텍스트 영속 엔티티 / 객체 DB 데이터에 매핑되는 메모리 상의 객체 @Entity 애너테이션을 사용한 클래스를 이용해 생성한 객체 영속 컨텍스트에 보관된 객체가 영속 객체가 된다. 영속 컨텍스트 일종의 메모리 저장소 Enitity Manager가 관리할 엔티티 객체를 보관하는 장소 (Entity Type, 식별자)를 key로, 엔티티 객체를 value로 하는 일종의 맵 형태로 저장 EntityManager.close() 영속 컨텍스트 제거 배치처리 X * 영속 컨텍스트와 캐시 동일 식별자 -> 동일 객체 영속 컨텍스트에 보관된 객체 조회 Repeatable Read 효과 특정.. 2023. 3. 23. 11. 값 콜렉션 주의사항 해당 강의는 코드 위주로 진행됩니다. 실질적인 객체 처리를 담당하는 코드는 링크에서 확인하시길 바랍니다. * 목록 조회 값 콜렉션을 eager 하게 fetch한 엔티티를 페이징 처리해서 읽어온다고 해보자. 예를 들어, Role 엔티티에 eager 하게 fetch한 role_perm은 원래는 한 번에 같이 넘어와야 한다. 그러나 일반적인 JPQL을 실행하면, 먼저 role 엔티티들을 가져와 List에 담고, 다시 List를 돌면서 role_perm을 가져온다. 즉, 반복이 2번 일어나게 된다. 이를 해결하기 위해 join fetch 를 사용하면, role을 읽어올 때 role과 role_perm을 join해서 데이터를 읽어온다. 그러나 이 때는 페이징 처리를 했음에도 limit을 걸지않고 일단 두 테이블을.. 2023. 3. 22. 10. 값 콜렉션 Map 매핑 해당 강의는 코드 위주로 진행됩니다. 실질적인 객체 처리를 담당하는 코드는 링크에서 확인하시길 바랍니다. * 단순 값을 Map으로 보관하는 모델 doc_prop 테이블은 map에 해당하는 테이블이다. name이 key, value가 value로 저장된다. Document의 props에 매핑된다. * 단순 값 Map 매핑 Document 클래스에서 확인할 수 있다. 기본적인 방법은 Set, List와 동일한다. @MapKeyColumn 애너테이션을 사용한다는 차이가 있다. 해당 애너테이션은 key값으로 쓰일 칼럼을 지정한다. * 저장 여러 값을 보유한 Map을 이용해 props 맵을 만들고 해당 props를 인자로 넘겨준 Document 객체를 생성하고 persist()를 해보자. 기본적으로 doc 테이블.. 2023. 3. 21. 09. 값 콜렉션 List 매핑 해당 강의는 코드 위주로 진행됩니다. 실질적인 객체 처리를 담당하는 코드는 링크에서 확인하시길 바랍니다. * 단순 값을 List로 보관하는 모델 질문(Question)의 보기를 question_choice 테이블에 담는다. 보기는 순서대로 저장되어야 하기 때문에 List로 표현하여 Question 클래스의 choices와 매핑한다. * 단순 값 List 매핑 Question 클래스에서 확인할 수 있다. Set을 매핑할 때와 다르게 @OrderColumn 애노테이션을 사용한다. 해당 애노테이션을 통해 인덱스 값을 저장할 칼럼을 지정한다. 예시에서는 idx 칼럼을 사용한다. 이외에는 Set을 매핑할 때와 동일한다. * 저장 Question에 id, text, 보기의 리스트를 인자로 넣어 객체를 생성하고 이를.. 2023. 3. 20. 이전 1 ··· 22 23 24 25 26 27 28 ··· 33 다음 반응형