본문 바로가기
스프링

JPA 관련 인터뷰 면접 질문 30가지 (심화 - 2)

by RWriter 2023. 5. 4.
반응형

1. JPA는 상속 매핑 전략을 어떻게 처리합니까? 각 전략을 자세히 설명하십시오.
2. FetchType.LAZY와 FetchType.EAGER의 차이점은 무엇입니까? 예를 들어 설명하십시오.
3. JPA Second-Level Cache의 작동 방식과 이점을 설명하십시오.
4. JPA에서 낙관적 잠금과 비관적 잠금의 차이점과 각 전략을 사용하는 경우를 설명하십시오.
5. JPA에서 JPQL, Criteria API 및 native SQL을 사용하는 것의 주요 차이점은 무엇입니까?
6. CascadeType 열거형과 다양한 값에 대해 설명하십시오. 각각 언제 사용해야 합니까?
7. JPA는 트랜잭션을 어떻게 처리합니까? EntityManager 및 트랜잭션 전파의 역할을 설명하십시오.
8. JPA의 N+1 select 문제는 무엇이며 어떻게 완화할 수 있습니까?
9. JPA로 페이지네이션 및 정렬을 처리하는 모범 사례를 설명하십시오.
10. JPA에서 merge() 및 persist() 메소드의 차이점을 설명하십시오.
11. JPA에서 복합 기본 키를 어떻게 매핑합니까? @EmbeddedId 및 @IdClass 주석을 설명하십시오.
12. JPA에서 stateless 세션 bean과 stateful 세션 bean의 차이점은 무엇입니까? 사용 사례를 설명하십시오.
13. JPA 엔티티에서 Auditing(예: 생성/업데이트된 타임스탬프)를 어떻게 처리할 수 있습니까?
14. JPA에서 양방향 관계를 관리하기 위한 모범 사례는 무엇입니까?
15. 비표준 데이터베이스 유형을 Java 개체에 매핑하기 위해 사용자 지정 JPA 변환기를 어떻게 구현합니까?
16. JPA에서 EntityListeners의 역할과 이를 이벤트 기반 프로그래밍에 사용하는 방법을 설명합니다.
17. JPA에서 버전 관리로 낙관적 잠금을 어떻게 구현합니까?
18. JPA에서 관리, 분리 및 제거된 엔터티 상태 간의 차이점을 설명하십시오.
19. JPA에서 예외를 어떻게 처리합니까? JPA 예외의 계층 구조를 설명하십시오.
20. EntityManagerFactory의 목적은 무엇이며 EntityManager와 어떤 관련이 있습니까?
21. 컨테이너 관리 또는 애플리케이션 관리 지속성 컨텍스트를 사용할 때 JPA에서 트랜잭션 경계를 어떻게 관리합니까?
22. JPQL 사용의 제한 사항은 무엇입니까? Criteria API는 이러한 한계를 어떻게 극복할 수 있습니까?
23. 다대다 관계를 JPA의 추가 속성과 어떻게 매핑합니까?
24. JPA의 단방향 관계와 양방향 관계의 차이점과 사용 사례를 설명하십시오.
25. JPA 기반 애플리케이션의 성능 튜닝 및 최적화에 대한 주요 고려 사항은 무엇입니까?
26. 마이크로서비스 아키텍처에서 JPA의 역할과 데이터 일관성에 미치는 영향을 설명하십시오.
27. JPA 기반 애플리케이션에서 데이터 마이그레이션 및 스키마 변경을 어떻게 처리합니까?
28. JPA 프로젝션의 개념과 효율적인 데이터 검색을 위해 이를 사용하는 방법을 설명하십시오.
29. JPA를 NoSQL 데이터베이스 또는 메시지 큐와 같은 다른 데이터 액세스 기술과 어떻게 통합합니까?
30. JPA 개발에서 흔히 발생하는 안티 패턴은 무엇이며 이를 방지할 수 있는 방법은 무엇입니까?

 

참고 문헌


Java Persistence API (JPA) Specification: https://jakarta.ee/specifications/persistence
Pro JPA 2: Mastering the Java™ Persistence API by Mike Keith and Merrick Schincariol (Apress)
Hibernate ORM: https://hibernate.org/orm
Spring Data JPA: https://spring.io/projects/spring-data-jpa
Java Persistence with Hibernate by Christian Bauer and Gavin King (Manning Publications)
Spring in Action by Craig Walls (Manning Publications)
High-Performance Java Persistence by Vlad Mihalcea (Amazon Digital Services)

반응형

댓글