Spring

JPA 심화.(INTRO)

sehunbang 2024. 3. 4. 10:37

 JPA +  학습 목표

  • ORM 의 탄생 배경부터 성장 과정까지 배웁니다.
  • Raw JPA 로 Slack 도메인으로 실습해보며 기능을 익힙니다.
  • SpringData 의 구성과 SpringData JPA 동작방법을 이해합니다.
  • SpringData JPA 를 Slack 도메인으로 실습해보며 기능을 익힙니다.
  • SpringData JPA 의 여러가지 확장 기능 개발을 실습해보며 활용역량을 키웁니다.
  1. JPA 뿐만 아니라 JDBC Template, MyBatis 기능들의 원리를 이해하고 사용할 수 있게됩니다.
  2. 현업에서 JPA를 사용하는 방법대로 JPA 의 기능들을 사용할 수 있게 됩니다.
  3. 현업에서 발생하는 문제들이 발생하지 않도록 JPA 를 사용할 수 있게 됩니다.
  4. 대용량 처리에 최적화 된 JPA 코드를 개선할 수 있습니다.
  5. 어려운 요구사항에도 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 에서 제공하는 여러 고급 기능들의 사용방법을 설명할 수 있다.