인프런 워밍업 스터디 클럽 0기- BE 발자국2(~3/3)

  • 일주일 간의 학습내용 요약

    • 스프링 컨테이너 이해 및 사용방법

    • Spring Data JPA를 사용한 데이터베이스 조작

    • 트랜잭션과 영속성 컨텍스트

이번주는 Section4의 주요 내용인 JPA, 트랜잭션에 대해 배웠습니다.

  • 학습내용 요약

JPA 사용목적 및 사용방법 : 지난주 까지는 JDBC에 직접 접근하는 코드를 생성하여 데이터베이스를 조작했습니다. 그러나 반복적인 작업 및 특정 데이터베이스에 종속적인 단점이 있었습니다. 그래서 JPA를 사용하여 문자열 변수에 작성된 SQL 쿼리를 만들지 않고도 데이터베이스를 조작하는 방법을 배울 수 있었습니다.

Spring Data JPA 구체적 사용방법

  1. 실제 테이블과 매핑되는 @Entity 클래스 생성

  2. application.yml에 JPA 관련 설정 추가

  3. @Id, @Column 등의 어노테이션을 사용한 설정

     

     

    Spring Data JPA를 사용한 쿼리 사용방법 : 일반적인 CRUD 쿼리인 SELECT ,UPDATE ,DELETE 등과 동일하게 사용할 수 있는 findBy, save, delete 등의 사용방법에 대해 이해하고 직접 활용하면서 활용도를 높일 수 있었습니다.

     

     

    @Transactional 어노테이션을 사용한 트랜잭션 적용 : SQL 사용 시 한번에 성공시키거나 하나라도 실패하면 모두 실패시키는 트랜잭션을 적용하는 방법을 배웠습니다.

  • 아쉬웠던 점

    • JPA의 다양한 쿼리 및 트랜잭션 이론을 배우고 다양하게 적용하여 적응력을 높였여야했는데 아직은 약간 부족한 면이 있습니다. 그래서 이번 스터디 클럽이 종료되더라도 JPA를 다양하게 적용하기 위한 연습을 많이할 생각입니다.

  • 미션 해결 과정

    • 6일차 과제

      • 6일차 과제는 기존의 쿼리를 통해 작성된 데이터베이스 접근 코드를 JPA를 사용할 수 있도록 분리하는 과제였습니다. 배운 내용을 토대로 기존의 데이터베이스 접근 쿼리들을 JPA로 변경하는데 집중하여 과제를 제출했습니다.

       

한 주 간의 강의를 수강하고 미션을 해결하면서 느꼈던 점 중 하나는 JPA를 사용하는 것이 매우 편리하다는 생각을 했습니다. 기존에는 항상 어떻게 쿼리를 만들어 데이터베이스에서 원하는 데이터를 만들지에 대한 고민이 있었습니다. 그러나 그런 걱정할 필요없이 JPA를 사용했을 때 편리한 점이 있다는 것이었습니다. 그래서 다양한 JPA 사용방법을 직접 활용하면서 JPA 활용능력을 높이고싶습니다!

댓글을 작성해보세요.