MyBatis Mapper XML 작성
1. 이번 주에 배운 기술이나 개념 중 가장 기억에 남는 3가지는 무엇인가요?
1. Spring Boot REST API 구조
- Controller, Service, Repository로 역할을 나누는 구조를 배웠다.
- 요청은 Controller에서 받고, 비즈니스 로직은 Service에서 처리하며, 데이터 접근은 Repository에서 담당한다는 흐름이 기억에 남았다.
2. MyBatis Mapper XML 작성
- namespace를 Repository 인터페이스의 패키지 경로와 맞춰야 한다는 점을 배웠다.
- select, insert, update, delete 태그를 이용해서 SQL과 자바 메서드를 연결하는 방식이 인상 깊었다.
3. Swagger UI 연동
- springdoc-openapi 의존성을 추가하면 API 문서를 자동으로 확인할 수 있다는 점이 편리했다.
- 서버 실행 후 /swagger-ui/index.html 경로에서 API 목록을 바로 볼 수 있었다.
2. 이번 주 과정 중 막혔던 문제나 오류가 있었나요? 어떻게 해결했나요? (없다면 가장 인상 깊었던 실습 내용)
MyBatis Mapper XML을 작성할 때 namespace를 어떻게 완성해야 하는지 헷갈렸다.
처음에는 com.까지만 작성되어 있었는데, Repository 인터페이스의 전체 경로인 org.example.usertest.repository.UserRepository를 넣어야 한다는 것을 알게 되었다.
또 Swagger UI를 실행하려고 했을 때 8080 포트가 이미 사용 중이라는 오류가 있었다.
기존에 실행 중이던 Java 프로세스를 종료한 뒤 다시 bootRun을 실행해서 해결했다.
추가로 UserRepositoryMemImp와 MyBatis UserRepository가 동시에 Bean으로 등록되어 충돌하는 문제도 있었다.
메모리 구현체의 @Repository를 제거해서 MyBatis Repository만 사용되도록 수정했다.
3. 이번 주 수업 진도 속도, 강사님의 강의 스타일, 혹은 반 분위기는 어땠나요?
이번 주 수업은 Spring Boot와 MyBatis를 실제 프로젝트에 적용하는 내용이라 실습 중심으로 진행되어 좋았다.
직접 오류를 만나고 수정하면서 개념을 더 확실히 이해할 수 있었고, 강사님의 설명은 코드 흐름을 따라가며 이해할 수 있게 진행되어 도움이 되었다.
4. 다음 주에는 어떤 부분을 보완하고 싶나요?
다음 주에는 MyBatis Mapper XML 작성에 더 익숙해지고 싶다.
특히 resultMap, parameterType, useGeneratedKeys 같은 설정을 정확히 이해하고 사용할 수 있도록 복습하고 싶다.
또 REST API를 만들 때 Controller, Service, Repository의 역할을 더 명확히 나누는 연습을 하고 싶다.
Swagger UI를 활용해서 API 요청과 응답을 직접 테스트하는 것도 더 많이 해보고 싶다.
댓글
댓글이 없습니다.
