JwtAuthenticationFilter 라고UsernamePasswordAuthenticationFilter.class 이전에//로그인전 UserPasswordAuthenticationFilter 를 통해 인증을 받도록 설정 .addFilterBefore(jwtAuthenticationFilter(), UsernamePasswordAuthenticationFilter.class);항상 해당 필터를 거치도록 설정을 하였다.초기@Slf4j public class JwtAuthenticationFilter extends UsernamePasswordAuthenticationFilter { @Autowired private PasswordEncoder passwordEncoder; /** * authenti..
package org.example.알고리즘.행렬의덧셈; import java.util.Arrays; /**/ class Solution { public static void main(String[] args) { Solution solution = new Solution(); System.out.println(Arrays.deepToString(solution.solution(new int[][]{{1, 2}, {2, 3}}, new int[][]{{3, 4}, {5, 6}}))); } public int[][] solution(int[][] arr1, int[][] arr2) { ArrayClass arrayClass1 = new ArrayClass(arr1); ArrayClass arrayClass..
@WithAnonymousUserSpring Security 의 테스트에서 사용된다.테스트 중인 해당 메서드가 익명 사용자 즉, 인증되지 않은 사용자로 접근한 경우를 테스트하고 싶은 경우 사용할 수 있다.@Test @DisplayName("인증되지 않은 사용자가 보호된 경로에 접근하는 경우 401 Unauthorized 응답을 받는다.") @WithAnonymousUser public void When_UnauthorizedUserAccessProtectedPath_Expect401() throws Exception { //when this.mockMvc.perform(get("/v1/api/cart/add")) .andExpect(status().isUnauthorized()); }내부소스@Target..
package org.example.알고리즘.안전지대; import java.util.Arrays; class Solution { public static final int[][] DIRECTIONS = {{-1, 0}, {1, 0}, {0, -1}, {0, 1}, {-1, -1}, {-1, 1}, {1, -1}, {1, 1}}; public static void main(String[] args) { Solution solution = new Solution(); System.out.println(solution.solution(new int[][]{ {0, 0, 0, 0, 0}, {0, 0, 0, 0, 0}, {0, 0, 0, 0, 0}, {0, 0, 1, 0, 0}, {0, 0, 0, 0, 0}, ..
package org.example.알고리즘.바탕화면정리; import java.util.Arrays; class Solution { public static void main(String[] args) { Solution solution = new Solution(); System.out.println(Arrays.toString(solution.solution(new String[]{ ".#...", "..#..", "...#." }))); System.out.println("================================"); System.out.println(Arrays.toString(solution.solution(new String[]{ "..........", ".....#.....
Swagger UI 와 Spring RestDocs 의 장 단점의 비교Swagger UI 의 장점직관적인 UI스웨거는 API 에 대한 요청과 응답 등을 시각적으로 표현하여 사용자가 쉽게 이해할 수 있습니다실시간 테스트API 엔드포인트에 대한 실시간 테스트를 제공합니다.Swagger UI 의 단점어노테이션 수동 기입 기반 API어노테이션 등을 수기로 기입하여 문서를 생성하기에, 코드와 문서간의 불일치가 발생할 수 있다.유지 보수의 문제성API 변경시마다 스웨거 어노테이션을 수정해야한다.복잡코드가 진짜~ 너무 더럽다어노테이션때문에 불필요하게 컨트롤러단과 DTO 단에서 피로함이 가중된다.Spring Rest Docs 의 장점정확성테스트 코드를 기반으로 문서를 생성하기에 코드와 문서간 일관성 유지가 가능하다가볍..