내일배움캠프(111)
-
[Spring Plus] Level 1-2 요구사항 반영
'Level 1-2' 의 요구사항을 반영한 내용을 기록한 포스팅이다. 어떠한 생각과 과정을 통해 요구사항을 반영했는지 알 수 있도록 작성해 보았다. 0. 요구사항 기획자의 요청을 현재 프로젝트에 반영해야 한다. 전달 받은 요청은 JWT 에 사용자 닉네임 정보를 담아 프론트 쪽에서 이를 꺼내 화면에 보여주길 원한다는 것이다. 1. 사용자 닉네임 추가1-1. User 클래스 필드 추가 일단 JWT 에 사용자의 닉네임 정보를 담고 싶다면 User 클래스와 매핑된 테이블에 닉네임 정보를 가질 필드 및 컬럼을 아래와 같이 추가할 필요가 있다 생각했다.@Getter@Entity@NoArgsConstructor@Table(name = "users")public class User extends Timestamped..
2024.11.12 -
[Spring Plus] Level 1-1 요구사항 반영
'Level 1-1' 의 요구사항을 반영한 내용을 기록한 포스팅이다. 어떠한 생각과 과정을 통해 요구사항을 반영했는지 알 수 있도록 작성해 보았다. 0. 요구사항 현재 'API(POST /todos)' 를 요청할 경우 아래와 같은 에러가 발생하고 있다.jakarta.servlet.ServletException: Request processing failed: org.springframework.orm.jpa.JpaSystemException: could not execute statement [Connection is read-only. Queries leading to data modification are not allowed] [insert into todos (contents,created_at,..
2024.11.11 -
[Spring Plus] 5분 기록 테이블
이번 개인과의 5분 기록 테이블을 작성한다. 프로젝트의 성격에 맞추어 테이블에는 아래와 같은 정보를 작성한다.단계 : 작업한 요구사항의 Level(단계) 정보 작성요구사항 : 작업한 요구사항의 간략한 정보를 작성분류 : 구현, 트러블 슈팅 등 작업의 목적을 작성날짜 : 작업 날짜 작성링크 : 작업한 내용에 대한 블로그 게시물 또는 Github 커밋 내역을 링크단계요구사항분류날짜링크1-1'API(/todos)' 호출 시 발생 에러 해결트러블슈팅2024.11.11블로그1-2'User' 클래스 'nickname' 필드 추가 및 'JWT' 사용자 별명 정보 삽입코드수정2024.11.12블로그1-3'AdminAccessLoggingAspect.logAfterChangeUserRole()' 이 원래 의도대로 동작하..
2024.11.11 -
[Outsourcing] 5분 기록 테이블
프로젝트가 시작되고 Github 의 'issue' 를 활용해 기능 구현에 대한 기록을 하기로 했지만 해당 게시물에 좀 더 간략하게 어떤 기능을 구현해야 하는지 기록하기 위해 '5분 기록 테이블' 을 작성해보려 한다. 테이블은 어떤 기능을 추가해야 하는지(했는지)와 관련 이슈를 확인할 수 있는 링크 정보를 담고 있다.기능 : 작업한 '기능' 에 대한 정보를 작성기록 : 어떤한 작업을 했는지 간단한 내용을 작성분류 : 구현, 트러블 슈팅 등 작업의 목적을 작성날짜 : 작업 날짜 작성이슈 : 팀 프로젝트(in Github Organization)에 작성한 'issue' 링크를 작성기능기록분류날짜이슈주문 생성사용자가 선택한 가게의 메뉴 정보를 통해 주문을 생성하는 기능 구현기능 구현2024.11.04#30주문내..
2024.11.04 -
[일정 관리 앱] 피드백 반영(2)
해당 프로젝트에 LoggingFilter 를 구현해 두었지만 이를 제대로 사용하지 못하고 있다는 피드백을 받아 해당 필터를 수정해 보았다. 기존에는 요청 URL 과 요청이 수행되고 나서 완료 메시지만을 로그로 남겼다면 수정을 통해 요청 정보(Request Header, Parameter, Body)와 응답 정보(HttpStatus, Response Body)를 로그로 남겨보았다. 0. 요청/응답 정보에 대한 로그를 Filter 에서 남긴 이유 처음에는 "그냥 적절한 곳에 로그를 남기면 되지 않을까?" 라는 생각만 있었지만 LoggingFilter 를 수정해보면서 "요청을 가장 먼저 마주하는 곳과 응답을 가장 마지막에 마주하는 곳이 Filter(프로젝트에서는 LoggingFilter)이니 여기서 로깅을 하..
2024.10.29 -
[일정 관리 앱] 피드백 반영(1)
과제 제출후 받은 피드백 내용들을 프로젝트에 반영하며 기록을 남겨본다. 1. 명확한 클래스 네이밍 이 부분은 인지하고 있었으나 섬세함이 부족해 피드백을 통해 수정을 권유받았다. 과제 요구사항 중 'Open API' 사용을 반영하기 위해 사용한 RestTemplate 객체를 빈으로 등록하기 위해 Config 클래스에 RestTemplate 객체를 생성하는 메서드를 구현해 놓았다. 하지만 이는 Config 라는 클래스의 이름만으로 어떤 '구성' 을 위한 코드가 클래스에 작성되어 있을지 알기 어렵다. 그래서 아래와 같이 Config 라는 기존의 클래스명을 RestTemplateConfig 로 변경해 RestTemplate 구성과 관련된 내용이 해당 클래스에 있음을 '명시적' 으로 알 수 있도록 수정하였다.@C..
2024.10.28