댓글 CRUD API를 작성했다. 테스트 코드 없이 목표를 일단 동작에 두고 작업하니 빠르게 끝이 났다. 그러나 DB 연결(?)하는데 시간을 허비했다. DB 프로덕션은 postgresql이고 로컬은 H2다. H2 콘솔을 연결해도 칼럼이 안 나오는 게 이상했다.
장고처럼 스키마를 생성해줘야 하나 싶어서 검색해봤지만 그런 내용을 찾을 수 없었다. 프로젝트 동료분과 대화할 시간에 질문을 했는데 H2 연결 시 JDBC URL
에 application.yml
에 정의한 주소를 썼어야 했다.
매번 겪지만 내가 무슨 작업을 하고 있는지 조금만 이격해서 생각해보면 DB Credential을 적어서 연결하는 작업인데 그런 생각 없이 무작정 시도하는 멘탈모델을 바꾸지 않아서 오류극복이 느린 것 같다.
학습이 단순히 강의를 보고 따라 치는 게 아니라 학습, 적용, 응용 단계로 나뉜다는 조언이 생각났다. 나는 스프링 학습 단계를 어정쩡하게 하다 말고 적용에 해당하는 프로젝트로 넘어와서 특정 작업을 할 때마다 나는 모른다는 핑계를 댔다. 하지만 다른 프레임워크로 학습, 적용, 응용단계를 경험해봤다면 스프링에서도 비슷한 개념으로 접근해야 바닥부터 쌓는 게 아니라 중간부터 쌓을 수 있겠다는 생각이다.