1차 과제와 비슷하게 Kakao API를 활용해서 HTTP 요청을 보내고, 응답을 받는 주제로 과제를 진행했다.
동작 - 데이터 - 객체 - 클래스 순서로 객체를 모델링 해야하는데 아직 참 어렵다. 그래도 더 나아질 부분만 남았다는 뜻이니깐 객체지향 공부를 더 해야겠다.
문제 1
JDBC를 사용하기 위해 Driver에 연결된 Connection을 인자로 받고, List<BookDto> list를 DB 저장소로 저장하는 메서드 이다. PreparedStatement 객체를 생성해서 사용을 하는데 Price와 Sale_price를 넣는 과정에서 SQL 문 ? 자리에 매칭이 되지 않는 문제가 있었다. intValue를 붙여줘서 잘 동작하긴 하지만 IDE에서 필요 없는 변환이라고 도움말이 뜨긴 한다. 이 부분에 대해서는 PreparedStatement 에 대해 더 알아봐야 할 것 같다.
느낀 점
1차 과제는 빈 프로젝트에서 아무런 설계 없이, 클래스를 하나 하나 만들어 가면서 과제를 진행했다. 점점 진행 할 수록 과제가 산으로 가고 있다는 느낌을 받았다. 지난 1차 과제와는 다르게 공책에 연필로 직접 관계도를 그려가면서 클래스를 설계했다. DB와 관계를 가지는 JdbcRepository.class를 구상하고, Kaka API와 통신하는 HttpClient.class를 중심으로 과제를 진행했다. 멘토님께서 말씀해주신 방식은 동작 - 데이터 - 객체 - 클래스 순서로 객체를 모델링 이 순서이다. 이 문장을 봤을 때, 아직 어떻게 시작을 해야할 지 막막하다는 생각이 들었다. 멘토님께서 추천해주신 책을 주문을 하고 그 책을 읽어보면서 객체지향에 관한 개념을 다시 한 번 정리해야할 것 같은 필요성을 느꼈다.
실행 화면, 결과 화면