[인프런 워밍업 클럽 0기] BE 2주차 회고

[인프런 워밍업 클럽 0기] BE 2주차 회고

2주차 학습 내용 정리

 

6일차

스프링 컨테이너의 개념을 배우고, 기존에 작성했던 Controller 코드를 Controller - Service -Repository 계층으로 3단 분리하는 방법으로 배웠습니다. 각 계층의 특징과 역할도 배웠습니다.

또한 FruitRepository를 메모리와 SQL 레포지토리로 나누고 @Primary 어노테이션을 활용해 두 레포지토리를 바꿔가며 동작할 수 있게 과제 코드를 변경해 보았습니다.

 

7일차

JPA의 개념을 배우고, JPA 사용 방법, 엔티티 클래스 생성 방법, 테이블 매칭 방법등을 배우고 유저 테이블에 JPA를 적용해 보았습니다. 그리고 배운 내용을 통해 기존 과제를 JPA 코드로 바꿔 보았습니다.

 

8일차~

Transaction이 무엇이고, 왜 사용해야 하는 지, 그리고 JPA 영속성 컨텍스트의 기능과 특징이 무엇인 지 배워 보았습니다.

그리고 이전까지 강의에서 다루었던 내용들을 익힐 수 있도록 미니 프로젝트를 수행하기 시작했습니다.

 

 

회고

6일차 과제까지는 무난하게 수행할 수 있었습니다. 그러나, 7일차 과제부터는 여러 난관이 있었습니다. 그중 가장 어려웠던 건 JPA 와 DB 테이블 매칭 이었습니다. 필드 이름을 camelCase로 적더라도 실제 데이터베이스에서는 snake_case 의 필드와 매핑되는 정책, 일반적으로 DB 네이밍은 snake_case 형식을 작성한다는 사실을 모른 채 진행하다 보니 많이 헤맸었고 결국 제 시간 안에 과제 제출을 하지 못했습니다.

7일차 과제를 제때 수행하지 못했지만, JPA 와 DB 테이블 매칭 방법을 알 수 있는 좋은 기회였다고 생각합니다.

현재 미니 프로젝트는 1단계까지 완료한 상태이며, 2단계를 진행 중에 있습니다. 다음 주 내로 미니 프로젝트 3단계 까지 완료 하고, 각 단계마다 어떻게 접근을 하였는지를 벨로그에 적을 예정입니다.

댓글을 작성해보세요.