쉽게 켜다
close
프로필 배경
프로필 로고

쉽게 켜다

  • 분류 전체보기 (202)
    • 개발 일지 (1)
    • IT (2)
    • DDD (6)
    • 스프링(Spring) (53)
      • Spring (30)
      • MVC (3)
      • JPA (7)
      • WebFlux (10)
      • Testing (1)
      • Security (1)
      • Web Socket (1)
    • 데이터베이스 (15)
      • MySQL (2)
      • Redis (1)
    • 네트워크 (11)
      • 네트워크 프로그래밍 (9)
    • Git (8)
    • HTTP (4)
    • 알고리즘 (67)
      • 알고리즘 (7)
      • BOJ (53)
      • 프로그래머스 (7)
    • JAVA (6)
      • Java (1)
      • 이펙티브 자바 (4)
      • 100가지 질문 (0)
    • Kafka (4)
    • Python (2)
    • CI_CD (1)
    • Azure (3)
    • 컴퓨터망 (11)
    • 운영체제 (0)
  • 홈
  • 태그
  • 방명록
[Security/Test] : @WithMockUser, @WithUserDetails, @WithSecurityContext를 활용한 Spring Security Test 작성

[Security/Test] : @WithMockUser, @WithUserDetails, @WithSecurityContext를 활용한 Spring Security Test 작성

Spring Security를 사용하는 애플리케이션에서 테스트를 작성할 때, 인증된 사용자 컨텍스트를 사용해야 하는 경우가 있습니다. Spring Security는 이를 위해 다음과 같은 어노테이션을 지원합니다.`@WithMockUser``@WithUserDetails``@WithSecurityContext`@WithMockUser`@WithMockUser`는Spring Security 테스트를 위한 가장 기본적인 어노테이션입니다.@Test@WithMockUserpublic void testSecuredMethod() { // 테스트 코드}특징실제 사용자 데이터 없이도 테스트가 가능합니다.기본적으로 필드는 다음과 같이 설정됩니다.`username` : "user"`password` : "passwo..

  • format_list_bulleted 스프링(Spring)/Security
  • · 2025. 2. 11.
  • textsms
[Spring/Testing] : TDD

[Spring/Testing] : TDD

TDD란? Test Driven Development로프로덕션 코드보다 테스트 코드를 먼저 작성하여 테스트가 구현 과정을 주도하도록 하는 방법론Red-Green-RefactoringRed실패하는 테스트 작성구현부가 없이 테스트를 먼저 작성하는 것이기 때문에 실패할 수 밖에 없습니다.Green테스트 통과를 위한 최소한의 코딩테스트를 통과하기 위해서라면 대충 코딩해도 괜찮습니다.Refactoring구현 코드 개선 및 테스트 통과 유지예시) 장바구니에 담긴 음료의 총 금액을 계산하는 기능을 TDD로 구현하기 1. Red// Test Code@Testvoid calculateTotalPrice() { CafeKiosk cafeKiosk = new CafeKiosk(); Americano americano = n..

  • format_list_bulleted 스프링(Spring)/Testing
  • · 2025. 1. 10.
  • textsms
[Web Socket] Spring Framework에서의 Web Socket

[Web Socket] Spring Framework에서의 Web Socket

Spring Framework의 Web Socket 지원Spring 공식 문서를 살펴보면, 다음과 같은 3가지 기능을 지원하고 있는 것을 확인할 수 있다. WebSockets :: Spring FrameworkThe WebSocket protocol, RFC 6455, provides a standardized way to establish a full-duplex, two-way communication channel between client and server over a single TCP connection. It is a different TCP protocol from HTTP but is designed to work over HTTP, usindocs.spring.ioWeb Socket ..

  • format_list_bulleted 스프링(Spring)/Web Socket
  • · 2024. 7. 8.
  • textsms
[Spring] Filter란?

[Spring] Filter란?

Filter란? Dispatcher Servlet에 Request(요청)가 전달되기 전/후에 URL 패턴에 맞는 모든 요청에 대해 부가작업을 처리할 수 있는 기능을 제공하는 것 J2EE 표준 스펙 기능 ⇒ Java Servlet에서 제공 또한, Filter는 FilterChain을 통해 여러 Filter가 연쇄적으로 동작하게 할 수 있습니다. Filter의 메서드 필터를 추가하기 위해서는 `javax.servlet`의 `Filter` 인터페이스를 구현해야 합니다. `Filter` 인터페이스는 다음의 3가지 메서드를 가지고 있습니다. `init()` `doFilter` `destroy` public interface Filter { public default void init(FilterConfig fil..

  • format_list_bulleted 스프링(Spring)/Spring
  • · 2024. 4. 19.
  • textsms
[Spring] Interceptor란?

[Spring] Interceptor란?

Interceptor(인터셉터)란? Interceptor는 Controller가 요청을 처리하기 전/후 처리를 위한 것으로, Spring MVC에서 HTTP 요청을 가로채 처리하는 컴포넌트 입니다. 클라이언트의 요청이 Controller로 전달되기 전에 사전 작업을 수행하거나, Controller의 실행 이후 사후 작업을 수행할 수 있습니다. 즉, 서버에 들어온 Request 객체가 Controller의 Handler로 도달하기 전에 확인해 개발자가 원하는 추가적인 작업을 수행한 뒤, Handler로 보낼 수 있도록 해주는 것이 Interceptor 입니다. Interceptor를 사용하면 공통 코드 사용으로 코드의 재사용성이 증가합니다. 또한, 로깅, 모니터링 정보 수집, 접근 제어 처리 등의 실제 비..

  • format_list_bulleted 스프링(Spring)/Spring
  • · 2024. 4. 19.
  • textsms

[Spring/WebFlux] Debugging

Reactor에서의 디버깅 방법 Reactor는 처리되는 작업들이 대부분 비동기적으로 실행되고, Reactor Sequence는 선언형 프로그래밍 방식으로 구성되므로 디버깅이 쉽지 않습니다. 이러한 디버깅의 어려움을 최소화하기 위해 Reactor에서는 몇 가지 방법을 제공합니다. 1. Debug Mode를 사용한 디버깅 Reactor에서는 디버그 모드(Debug Mode)를 활성화해서 Reactor Sequence를 디버깅할 수 있습니다. @Slf4j public class DemoApplication { public static Map fruits = new HashMap(); static { fruits.put("banana", "바나나"); fruits.put("apple", "사과"); fruit..

  • format_list_bulleted 스프링(Spring)/WebFlux
  • · 2024. 3. 14.
  • textsms
  • navigate_before
  • 1
  • 2
  • 3
  • 4
  • ···
  • 9
  • navigate_next
공지사항
전체 카테고리
  • 분류 전체보기 (202)
    • 개발 일지 (1)
    • IT (2)
    • DDD (6)
    • 스프링(Spring) (53)
      • Spring (30)
      • MVC (3)
      • JPA (7)
      • WebFlux (10)
      • Testing (1)
      • Security (1)
      • Web Socket (1)
    • 데이터베이스 (15)
      • MySQL (2)
      • Redis (1)
    • 네트워크 (11)
      • 네트워크 프로그래밍 (9)
    • Git (8)
    • HTTP (4)
    • 알고리즘 (67)
      • 알고리즘 (7)
      • BOJ (53)
      • 프로그래머스 (7)
    • JAVA (6)
      • Java (1)
      • 이펙티브 자바 (4)
      • 100가지 질문 (0)
    • Kafka (4)
    • Python (2)
    • CI_CD (1)
    • Azure (3)
    • 컴퓨터망 (11)
    • 운영체제 (0)
최근 글
인기 글
최근 댓글
태그
  • #SpringWebFlux
  • #BOJ
  • #spring
  • #CUDA
  • #리액티브프로그래밍
  • #jpa
  • #프로그래머스
  • #백준
  • #network
  • #MPC
전체 방문자
오늘
어제
전체
Copyright © 쭈미로운 생활 All rights reserved.
Designed by JJuum

티스토리툴바