🤍 전 강의 25% 할인 중 🤍

2024년 상반기를 돌아보고 하반기에도 함께 성장해요!
인프런이 준비한 25% 할인 받으러 가기 >>

[인프런 워밍업 스터디 클럽 1기 BE] 2주차 발자국

[인프런 워밍업 스터디 클럽 1기 BE] 2주차 발자국

학습 내용

1. 강의

1일차: 스프링 컨테이너, 스프링 빈의 개념에 대해 학습하고, 왜 스프링 컨테이너가 좋은 코드와 관련이 있는지 알아봤다. 그리고 의존성 주입방법에 대해 학습했다.

2일차: 기존의 문자열 SQL을 활용하는 방식의 한계점을 알아봤고, 이를 해결하기 위해 Spring Data JPA를 이용하는 방법에 대해 학습했다.

3일차: 트랜잭션의 개념에 대해 배우고, @Transactional 어노테이션을 사용해 서비스 레이어의 메서드에서 트랜잭션이 보장될 수 있도록 적용해봤다. 그리고 영속성 컨텍스트에 대해 알아봤다.

  • 스프링에서 트랜잭션을 시작하면 영속성 컨텍스트가 생기고, 트랜잭션이 종료될 때 영속성 컨텍스트도 종료된다.

  • 영속성 컨텍스트 특징

    • 변경 감지(Dirty Check): 영속성 컨텍스트 안의 Entity는 변경을 감지해 자동으로 저장된다.

    • 쓰기 지연: SQL들을 트랜잭션이 commit될 때 한 번에 날린다.

    • 1차 캐싱: 영속성 컨텍스트 안의 Entity를 저장하여 같은 엔티티 조회 시 DB 대신 이미 저장되어 있는 내용에서 조회한다.

       

4일차: 이전까지 배운 내용들을 종합하여 책 생성, 대출, 반납 기능 API 개발 실습을 했다.

5일차: JPA에서 연관관계를 매핑하는 방법에 대해 학습하고, 도메인 계층에 비즈니스 로직을 넣도록 기존의 대출, 반납 기능 코드를 리팩토링했다.

2. 과제

채널톡 아이콘