본문 바로가기

전체 글824

[1년 후 마실가실] API 문서화 도구 - Spring REST Docs 1년 전 진행했던 마실가실 프로젝트를 🛠️리팩토링하며 정리한 내용입니다.  리팩토링을 Backend 부분만 하고 있다보니, 문득.. 다른 이들이 제 API를 확인할 길이 전혀 없다는 걸 최근에 깨달았습니다..! 프론트 연결...까지는 시간이 오래 걸릴 것 같아서, 그간 만들어놓은 API를 문서로라도 남겨두면 좋을 것 같아서 API 문서화 도구를 썼습니다. 근래 작업한 내용 중에서 가장 많은 블로그 글을 찾아보았습니다.. 그렇기에 정리가 꼭 필요하다고 판단되어 글을 작성해봅니다.  1. API 문서화클라이언트가 REST API 애플리케이션에 요청을 전송하기 위해서 알아야 되는 요청 정보(요청 URI, request body, query parameter 등)를 정리하여 문서화 하는 것  * 일반적으로 애.. 2024. 10. 10.
[1년 후 마실가실] Issue 및 PR Template 설정과 Label 변경 1년 전 진행했던 마실가실 프로젝트를 🛠️리팩토링하며 정리한 내용입니다. 최근에 1년후 마시가실에 커밋 규칙이 생겼습니다.From me To me이지만, 습관을 잘 들여놓으면 좋기 때문이죠.(혹시 누군가 찾아와 제 프로젝트에 대한 관심을 표현했을 때, 제 커밋 규칙과 함께 할 날이 올 수도 있습니다😎.) 커밋 규칙에 맞춰 developer에서 작업하고 commit하고 push하고 pr을 작성하다 문득.. 아주 문득.. Issue와 PR 컨트롤을 잘 하고 있나에 대한 고민이 생겼습니다. 추적할 수 있게 PR에 Issue 번호는 적는데, 뭔가 부족한 듯한 이 느낌..🥸 그래서 브랜치 전략도 바꾸고, Issue도 바꾸고, PR도 바꾸고, 그냥 다 바꾸고.. 바꿨습니다.지금은 Issue로부터 Branch를.. 2024. 10. 9.
[1년 후 마실가실] 로그 설정 1년 전 진행했던 마실가실 프로젝트를 🛠️리팩토링하며 정리한 내용입니다.  System.out.println의 시대는 가라!log.info의 시대여 오라! 누가 누가 api로 무얼했나를 몰래 시켜보고자 log를 추가하였습니다. 아직 환경이 나누어져 있지 않아서, 추후 local, dev, prod 등으로 환경을 구분하여 log 파일 설정도 발전시켜보면 좋을 것 같습니다⭐!  logback-spring.xmlresources 폴더에 추가 * Color 설정  * %색상(log 정보) 기재  * 지원 색상: " %black", "%red", "%green", "%yellow", "%blue", "%magenta", "%cyan", "%white", "%gray", "%boldRed", "%boldGreen.. 2024. 10. 3.
[1년 후 마실가실] 커밋 규칙 1년 전 진행했던 마실가실 프로젝트를 🛠️리팩토링하며 정리한 내용입니다. 그간 커밋 메시지 안녕하셨는지요..? 전 직관적으로 씁니다."JWTProvider: JWT 오류 수정" 하지만, 이제는 깃모지와 함께 헤더만 보고도 유추할 수 있도록 진화하였습니다. 사실 마실가실 리팩토링, 혼자하기 때문에 커밋 메시지나 규칙은 크게 신경쓰지 않았습니다. 왜냐면 From me To me 같은 느낌이랄까요...혼자하기에 규칙을 쓰지 않는 것보다 오히려 여러 규칙을 적용해볼 수 있는 좋은 기회라 생각하며 커밋 규칙을 (제가 적용할 수 있는 부분에 한해서) 간단히 정리해 보고자 합니다. Commit = hash + message + author + code snapshotMessage* 제목(타이틀)과 본문은 개행하여 .. 2024. 10. 1.
[1년 후 마실가실] @Valid와 @RestControllerAdvice 1년 전 진행했던 마실가실 프로젝트를 🛠️리팩토링하며 정리한 내용입니다.  최근에 마실가실 리팩토링 보완점을 들을 수 있던 좋은 기회가 있어서 관련된 내용을 리리팩토링하고 있습니다👩‍🏫! 현재 프로젝트에서는 유효성 검증을 전역으로 하고 있었습니다.무슨 말이냐면.. SignUpDto에서 이메일, 전화번호, 비밀번호 등을 받을 때, 유효성 검증이 들어가는데 저는'ValidationUtils'를 통해서 빈 값은 아닌지 형식은 맞는지 검증을 했었죠. 하지만, 회원가입 시 한 번만 쓰이는 Validation은 전역보다는 해당 DTO에서 처리하는 좋은 방법도 있다는 걸 알게 되었는데.. 문제는.. 기존에 @RestControllerAdvice 설정들이 움직이지 않는다는 것,,이 참에 예외 처리를 제대로 정리해.. 2024. 9. 29.
[해결 방법] Failed to determine a suitable driver class Factory method 'dataSource' threw exception with message: Failed to determine a suitable driver class 근데 이제 DataSource와 Drive class를 곁들인EnvironmentLanguage: Java 17Framework: SpringBoot 3.1.0, Junit5DB: MySQL, Redis 오류dataSourceScriptDatabaseInitializer의 Bean 생성을 실패적합한 드라이버 클래스를 찾지 못함  원인.gitignore에 환경변수 설정과 관련된 정보가 들어있는 application.properties를 추가github에서 application.properties가 제거된 채로 업로드왜인지 모르.. 2024. 9. 28.