Spring
JPA 심화.(INTRO)
sehunbang
2024. 3. 4. 10:37
JPA + 학습 목표
- ORM 의 탄생 배경부터 성장 과정까지 배웁니다.
- Raw JPA 로 Slack 도메인으로 실습해보며 기능을 익힙니다.
- SpringData 의 구성과 SpringData JPA 동작방법을 이해합니다.
- SpringData JPA 를 Slack 도메인으로 실습해보며 기능을 익힙니다.
- SpringData JPA 의 여러가지 확장 기능 개발을 실습해보며 활용역량을 키웁니다.
- JPA 뿐만 아니라 JDBC Template, MyBatis 기능들의 원리를 이해하고 사용할 수 있게됩니다.
- 현업에서 JPA를 사용하는 방법대로 JPA 의 기능들을 사용할 수 있게 됩니다.
- 현업에서 발생하는 문제들이 발생하지 않도록 JPA 를 사용할 수 있게 됩니다.
- 대용량 처리에 최적화 된 JPA 코드를 개선할 수 있습니다.
- 어려운 요구사항에도 JPA 의 고오급 기능들을 사용할 수 있습니다.
✅ 체크 리스트
- [ ] JDBC 와 Persistence Framework 의 차이점에 대해 설명할 수 있다.
- [ ] JDBC Template 과 MyBatis 의 차이점에 대해 설명할 수 있다.
- [ ] SQL Mapper 와 ORM 의 차이점에 대해 설명할 수 있다.
- [ ] MyBatis 가 쿼리를 생성하는 2가지 방법에 대해 설명할 수 있다.
- [ ] 영속성 컨텍스트와 쓰기지연의 연관성에 대해서 설명할 수 있다.
- [ ] 다대다 관계를 현업에서 주로 어떻게 구현하여 사용하는지 설명할 수 있다.
- [ ] 부모가 자식의 영속성을 완전히 관리하기 위해서 사용하는 cascade 옵션을 설명할 수 있다.
- [ ] 현업에서 주로 사용하는 Fetch 전략에 대해서 설명할 수 있다.
- [ ] QueryDSL 의 버전별 연동방법을 설명할 수 있다.
- [ ] QueryDSL 로 페이징 및 정렬 쿼리를 작성할 수 있다.
- [ ] JPA 쿼리가 응답해주는 Page<T>, Slice<T>, Iterable<T> 의 차이점을 설명할 수 있다.
- [ ] Entity 의 일부필드만으로 생성 또는 업데이트 하는 방법을 설명할 수 있다.
- [ ] Transcation 의 Isolation 과 propagation 종류 및 차이점에 대해 설명할 수 있다.
- [ ] 현업에서 사용하는 Transaction 전파전략을 설명할 수 있다.
- [ ] SpringDataJpa 에서 제공하는 여러 고급 기능들의 사용방법을 설명할 수 있다.