● 계획
- 오늘 나의 학습 목표
솔로 프로젝트 - 웹 애플리케이션 설계
● 점검 및 평가
- 새롭게 학습한 내용은
- 이해되지 않은 부분은
- 보완하기 위해 무엇을
본격적인 프로젝트에 돌입하기 이전에 상대적으로 가벼운 솔로 프로젝트를 진행했다
자세한 구현과정이나 내용은 따로 블로깅할 예정이다
이번 목표는
사업자를 위한 커뮤니티의 조회 기능 구현이었다
더 궁극적인 목표는 API 문서화를 하는 것이었다
하다보니 여태까지 배웠던 내용들이 필요하게되는 순간이었다
진행과정에서 수 많은 에러가 있었지만 그걸 제대로 기록해두지 않고 해결한 것들이 많아서 아쉬웠다
그러한 트러블슈팅을 기록해야 금방 실력도 늘텐데말이다
v1/members/filter 경로로 GET 요청을하는데
업종, 지역 2가지로 검색 가능하게끔 구현했다
companyType
companyLocation
URI를 써보면
v1/members/filter?companyType=”001”&&companyLocation=”002” 이런식으로 조건을 달아서 검색할 수 있을 것이다
- 1개 이상 쿼리 파라미터로 보내줘야하는 경우
- 0개 보낼경우 → error
- 1개 보내면 ok
- 2개 보내도 ok
- 2개를 모두 보내야 할 경우
- 0개 보내면 error
- 1개 보내면 error
- 2개 보낼경우만 ok
- 쿼리 파라미터에 아무것도 안적어도 될 경우
- 0개 보내면 → getMembers 똑같이 처리 (모든 멤버 리스트 리턴)
이렇게 조건문을 생각할 수 있었다
컨트롤단에서 서비스에 있는 메소드를 호출 (이 메소드는 레포지토리에서 가져온 로직과 함께 조건문으로 나타내준다)
테스트단에서 @BeforeEach로 스텁 데이터를 만들어주고 given when then 에 맞춰서 로직을 작성했다 테스트가 통과하면서 빌드가 된 것을 API 화 했다
일련의 과정들이 굉장히 복잡하고 섬세해서 힘들었다
그래도 비슷한 로직을 작성할 때에는 익숙해서 금방 구현해낼 수 있지 않을까 라고 생각해본다
'데일리 회고록 (2022.04.25 ~ 10.19) > 8월' 카테고리의 다른 글
2022.08.11 (0) | 2022.08.11 |
---|---|
2022.08.07 (0) | 2022.08.09 |
2022.08.06 (0) | 2022.08.09 |
2022.08.05 (0) | 2022.08.09 |
2022.08.04 (0) | 2022.08.09 |
댓글