본문 바로가기

k-digital training76

[TIL] 2023-01-10(52day) Exception 처리(2) 👉 스프링이 제공하는 다양한 예외처리 방법 # Spring은 에러 처리라는 공통 관심사(cross-cutting concerns)를 메인 로직으로부터 분리하여 예외 처리 전략을 추상화한 HandlerExceptionResolver 인터페이스를 만들었다. // Object 타입인 handler는 예외가 발생한 컨트롤러 객체 public interface HandlerExceptionResolver { ModelAndView resolveException(HttpServletRequest request, HttpServletResponse response, Object handler, Exception ex); } - 발생 위치 : 시스템 레벨에서 생성 - 발생 클래스 : jav.. 2023. 1. 10.
[TIL] 2023-01-09(51day) Exception 처리(1) 👉 오류(Error) VS 예외(Exception) # 오류 (Error) - 발생 위치 : 시스템 레벨에서 생성 - 발생 클래스 : java.lang.Error 클래스의 서브 클래스 # 예외(Exception) - 발생 위치 : 개발자가 구현한 로직에서 발생 - 발생 클래스 : java.lang.Exception 클래스와 그 서브 클래스 - 필요한 이유 : 예외로 발생할 상황을 미리 예측하여 처리할 수 있다. 예외를 개발자가 처리할 수 있게 구분하고 그에 따른 처리 방법을 명확히 알고 적용할 수 있다. 예외를 통해 사용자에게 오류 발생을 알려야 한다. (안내를 위해) + 개발자에게도 알려야 한다. (오류 수정을 위해) # JAVA Exception 에러 출력 - e.getM.. 2023. 1. 9.
[WIL] 2023-01-07(10th week) / 팀프로젝트 😃 Keep - 프로젝트 타임라인을 잘 세움 - 정해진 시간마다 진행상황 공유하기 - 코드 리뷰를 받고 수정을 진행함 - 문제 발생시 사용자 환경의 문제인지 화면공유를 통해 빠르게 확인하고 수정함 😅 Problem - Git사용법을 정확히 알지못해 커밋이나 병합부분에서 문제발생 - 초기 로직설계 단계에서 구현 사항을 상세하게 나누지 못함 - 메소드 이름을 설계단계에서 규칙성있게 만들지 못함 💪 Try - 개별적으로 Git사용법을 공부하여 이후 프로젝트에서는 Git때문에 프로젝트 진행에 차질이 생기는것을 방지해야함 - 다이어그램을 활용하여 로직 설계에 집중해 최대한 큰 그림은 그려놓고 개발 진행 - 설계단계부터 팀Rule을 만들어 규칙성있는 파일작성필요 - 더욱 확실한 API명세 - 개발 중간중간 변경사항.. 2023. 1. 7.
[TIL] 2023-01-06(50day) 3차 프로젝트 API 수정 👉 User API 👉 Admin API 👉 Post API 👉 Category API 🙋‍♂️ 소감 리팩토링 과정에서 다수의 변수와 메서드 URI의 주소들이 변경이 되어서, 두명씩 나누어서 API와 변수, 메서드를 수정하였다. 두개의 브랜치를 하나로 합치는 작업을 했고, 변경된 부분에 대한 API 명세서를 수정하였다. 프로젝트 초반에 최대한 변경없이 진행 될 수 있도록 정하고 진행하는게 필요하다는것을 다시 한번 느꼈다. 😈 아는 내용이라고 그냥 넘어가지 않기! 😈 2023. 1. 6.
[TIL] 2023-01-05(49day) 3차 프로젝트 Spring Security 👉 PostController @PostMapping("/posts") @Operation(summary = "Create Post", description = "Create post Page") public PostResponseDto createPost(@RequestBody PostRequestDto requestDto, @AuthenticationPrincipal UserDetailsImpl userDetails) { return postService.createPost(requestDto, userDetails.getUser().getUsername()); } 👉 PostService @Transactional public PostResponseDto .. 2023. 1. 6.
[TIL] 2023-01-04(48day) Access Token & Refresh Token 👉 JWT(JSON Web Token) - 유저를 인증하고 식별하기 위한 토큰이다. 토큰은 세션과는 달리 서버가 아닌 클라이언트에 저장. 👉 Access Token & Refresh Token - Refresh Token은 Access Token과 똑같은 형태의 JWT - Refresh Token은 긴 유효기간을 가지면서, Access Token이 만료됐을 때 새로 발급해주는 열쇠가 된다. ex) 1. Refresh Token의 유효기간은 2주, Access Token의 유효기간은 1시간. 2. 사용자는 API 요청을 하다가 1시간이 지나면, 가지고 있는 Access Token은 만료. 3. 그러면 Refresh Token의 유효기간 전까지는 Acces.. 2023. 1. 4.