blues_log
2023-07-27 TIL (필터의 예외처리)
TIL&WIL 2023. 7. 27. 22:03

공부한 내용 프로그래머스 알고리즘 문제풀이 내배캠 강의 내배캠 플러스 주차 복습과제 새로 알게된 내용 오늘은 최근에 알게된 @ControllerAdvice와 @ExceptionHandler를 활용해서 Jwt 토큰이 유효하지 않은 경우 예외 처리를 했다. 우선 상황을 크게 고려하지 않고 평소 controller에서 발생한 예외처럼 @ControllerAdvice와 @ExceptionHandler을 사용했다. 작성한 코드는 여기를 확인 하면된다. https://github.com/hakjunjoo/blog-spring-prac/commit/1eeaed4ebfbe769af374637a188737981c92239b#diff-2e7759d9dd63d3669eb60d8add3269e17278279c2ce8336c0..

article thumbnail
2023-07-26 TIL (RequestDispatcher)
TIL&WIL 2023. 7. 26. 21:33

오늘 공부한 내용 프로그래머스 알고리즘 문제풀이 내배캠 강의 내일배움캠프 플러스 주차 과제 (회원가입, 로그인 기능 추가) 알게된 내용 나는 로그인 기능을 UsernamePasswordAuthenticationFilter를 상속받는 JwtAuthenticationFilter에서 구현했다. 처음 필터를 배울 때에는 컨트롤러 앞단에서 기능을 수행하기 때문에 서로 소통을 할 수 없는줄 알고 있었고, 로그인 성공과 실패를 프론트를 구현해야 확인할 수 있는 줄 알았다. 그래도 과제의 결과물 때문에 성공과 실패를 알려줘야해서 처음에는 HttpServletResponse의 sendRedirect() 메서드를 활용해서 로그인이 실패했다는 것을 컨트롤러에 반환했다. @Override protected void unsuc..

article thumbnail
[Note] 스택(Stack)과 큐(Queue)
Note 2023. 7. 25. 22:10

Stack 스택은 쉽게 바구니를 떠올리면 된다. 바구니에 물건을 담고 다시 꺼낼 때에는 마지막에 담았던 물건을 먼저 꺼낸다. 후입선출(LIFO : Last In First Out) 데이터를 한 뱡향으로만 저장할 수 있고, Top으로 정한 곳의 데이터만 조회/삽입/삭제를 할 수 있다. 주요 메서드 isEmpty() : 스택이 비어있는지 boolean 타입으로 리턴한다. (비어있으면 true, 비어있지 않으면 false) isFull() : 스택이 가득찼는지 boolean 타입으로 리턴한다. (가득 차있으면 true, 가득 차있지 않으면 false) push() : 스택에 새로운 원소를 삽입한다. peek() : 가장 마지막에 삽입한 데이터를 읽는다. pop() : 가장 마지막에 삽입한 데이터를 읽고 해당 ..

2023-07-25 TIL (TEST)
TIL&WIL 2023. 7. 25. 21:18

오늘 학습한 내용 소셜 로그인 기능 (OAuth2 이용) 단위 테스트 코드 테스트 코드는 소프트웨어의 기능과 동작을 테스트하는데 사용되는 코드이다. 개발 과정 중에서 예상치 못한 문제를 미리 발견할 수 있고, 작성한 코드가 의도한대로 작동하는지 검증할 수 있다는 장점이 있다. (실제 회사에서도 무조건 !! 테스트 코드를 활용한다.) 배포후에 에러가 발생하면 그것을 해결하는 시간과 비용이 크다.. Test 코드는 정말 중요한 내용이니까 테스트 코드에 대해서 열심히 공부도 하고 실제로 적용도 해서 더욱 완성도 높은 개발을 할 수 있는 실력을 쌓아야겠다.

2023-07-24 TIL (백오피스 프로젝트 회고)
TIL&WIL 2023. 7. 24. 20:55

최종 결과물 https://github.com/hakjunjoo/outsideworld GitHub - hakjunjoo/outsideworld Contribute to hakjunjoo/outsideworld development by creating an account on GitHub. github.com 만족스러웠던 점 (Keep) 우선, 지금까지 해왔던 프로젝트 중에서 가장 완성도가 높았던 것 같다. 팀원들과의 의사소통 (주기적인 회의 및 코드리뷰, 상황공유)이 많았던 것 같다. 서버와 클라이언트가 소통하는 과정을 조금 이해할 수 있었던 시간이었다. 스프링 코드가 많이 익숙해지고 있다. 프론트 구성도 해봤는데 이 역시 좋은 경험이었던 것 같다. 아쉬웠던 점(Problem) 프로필이나 게시글에 이..