반응형

RabbitMQ의 채널 및 연결

1. 소개 이 빠른 사용방법(예제)에서는 연결 및 채널이라는 두 가지 핵심 개념과 관련된 RabbitMQ의 API를 사용하는 방법을 보여줍니다. 2. RabbitMQ 빠른 요약 RabbitMQ는 메시징 요구를 처리하기 위해 모든 규모의 회사에서 널리 사용되는 AMQP (Advanced Messaging Queue Protocol)의 대중적인 구현입니다. 응용 프로그램의 관점에서 우리는 일반적으로 AMQP의 주요 엔터티인 가상 호스트, 교환 및 Queue에 관심이 있습니다. 이전 기사에서 이러한 개념을 이미 다루었으므로 여기서는 덜 논의된 두 개념인 연결 및 채널에 대한 세부 정보에 중점을 둘 것입니다. 3. 연결 클라이언트가 RabbitMQ 브로커와 상호 작용하기 위해 취해야 하는 첫 번째 단계는 연결을..

Spring 2022.11.12

스프링 배치 소개

1. 개요 이 예제에서는 Spring Batch에 대한 실용적이고 코드 중심적인 소개를 살펴볼 것입니다. Spring Batch는 강력한 작업 실행을 위해 설계된 처리 프레임워크입니다. 현재 버전 4.3은 Spring 5와 Java 8을 지원합니다. 또한 일괄 처리를 위한 새로운 Java 사양인 JSR-352도 수용합니다. 다음은 프레임워크의 몇 가지 흥미롭고 실용적인 사용 사례입니다. 2. 워크플로 기본 Spring Batch는 작업 리포지토리가 작업을 예약하고 작업과 상호 작용하는 작업을 수행하는 기존 배치 아키텍처를 따릅니다. 작업에는 하나 이상의 단계가 있을 수 있습니다. 그리고 모든 단계는 일반적으로 데이터를 읽고, 처리하고, 쓰는 순서를 따릅니다. 그리고 물론 이 프레임워크는 작업 저장소에 s..

Spring 2022.11.12

Postman에서 파일 및 JSON 데이터 업로드

1. 개요 Postman 은 API 개발 수명 주기의 다양한 단계를 최적화하는 인기 있는 API 플랫폼입니다. Postman은 코드를 작성하지 않고도 API를 테스트 하는 데 사용할 수 있습니다. 독립 실행형 앱이나 브라우저 확장 프로그램을 사용할 수 있습니다. 이 예제에서는 Postman을 사용할 때 파일과 JSON 데이터를 업로드하는 방법을 알아봅니다. 2. 애플리케이션 설정 데이터를 업로드하기 위해 엔드포인트를 노출 하는 기본 Spring Boot 애플리케이션을 설정해 보겠습니다 . 2.1. 의존성 우리는 pom.xml 에서 spring-boot-starter-web 의존성을 가진 기본 스프링 애플리케이션을 정의했습니다 : org.springframework.boot spring-boot-start..

Spring 2022.11.12

JSON과 Protobuf 간 변환

1. 개요 이 사용방법(예제)에서는 JSON에서 Protobuf로, Protobuf에서 JSON으로 변환하는 방법 을 보여 줍니다 . Protobuf는 구조화된 데이터 를 직렬화 하는 데 사용되는 무료 오픈 소스 크로스 플랫폼 데이터 형식 입니다. 2. 메이븐 의존성 시작하려면 protobuf-java-util 의존성 을 포함하여 Spring Boot 프로젝트를 생성해 보겠습니다 . com.google.protobuf protobuf-java-util 3.21.5 3. JSON을 Protobuf 로 변환 JsonFormat 을 사용하여 JSON을 protobuf 메시지로 변환할 수 있습니다 . JsonFormat 은 protobuf 메시지를 JSON 형식으로/에서 변환하는 유틸리티 클래스입니다. Json..

Spring 2022.11.12

스프링 Security – 요청 거부된 예외

1. 소개 Spring Framework 버전 5.0 ~ 5.0.4, 4.3 ~ 4.3.14 및 기타 이전 버전에는 Windows 시스템에서 디렉터리 또는 경로 탐색 Security 취약점이 있었습니다. 정적 리소스를 잘못 구성하면 악의적인 사용자가 서버의 파일 시스템에 액세스할 수 있습니다. 예를 들어 file: protocol을 사용하여 정적 리소스를 제공하면 Windows에서 파일 시스템에 대한 잘못된 액세스를 제공합니다 . Spring Framework는 취약점 을 인지하고 이후 릴리스에서 수정했습니다. 따라서 이 수정 사항은 경로 탐색 공격으로부터 애플리케이션을 보호합니다. 그러나 이 수정으로 인해 이전 URL 중 일부는 이제 org.springframework.security.web.firew..

Spring 2022.11.11

Spring Security 및 MongoDB를 사용한 인증

1. 개요 Spring Security 는 데이터베이스 및 UserDetailService 와 같은 다양한 인증 시스템을 제공합니다 . JPA 지속성 계층 을 사용하는 대신 예를 들어 MongoDB 저장소 를 사용할 수도 있습니다 . 이 예제에서는 Spring Security와 MongoDB를 사용하여 사용자를 인증하는 방법을 볼 것입니다. 2. MongoDB를 사용한 스프링 Security 인증 JPA 리포지토리를 사용하는 것과 유사하게 MongoDB 리포지토리를 사용할 수 있습니다 . 그러나 이를 사용하려면 다른 구성을 설정해야 합니다. 2.1. 메이븐 의존성 이 예제에서는 Embedded MongoDB 를 사용할 것 입니다. 그러나 MongoDB 인스턴스와 Testcontainer 는 프로덕션 환경..

Spring 2022.11.11

스프링 Security 예외 처리

1. 개요 이 기사에서는 Spring Security Resource Server 에서 생성된 Spring Security 예외를 처리하는 방법을 살펴보겠습니다 . 이를 위해 필요한 모든 구성을 설명하는 실제 예도 사용합니다. 먼저 Spring Security에 대해 간단히 소개하겠습니다. 2. 스프링 시큐리티 Spring Security는 Spring 프로젝트의 일부인 라이브러리입니다. Spring 프로젝트에서 사용자 액세스 제어의 모든 기능을 그룹화하려고 시도합니다 . 액세스 제어를 사용하면 응용 프로그램에서 지정된 사용자 또는 역할 집합이 실행할 수 있는 옵션을 제한할 수 있습니다. 이 방향에서 Spring Security는 비즈니스 로직에 대한 호출을 제어하거나 특정 URL에 대한 HTTP 요청 ..

Spring 2022.11.11

커스텀 스프링 SecurityConfigurer

1. 개요 Spring Security Java 구성 지원은 강력한 유창한 API를 제공하여 애플리케이션에 대한 Security 매핑 및 규칙을 정의합니다. 이 빠른 기사에서는 한 단계 더 나아가 실제로 사용자 지정 구성자를 정의하는 방법을 살펴보겠습니다. 이것은 표준 Security 구성에 사용자 정의 논리를 도입하는 고급스럽고 유연한 방법입니다. 여기의 빠른 예에서는 주어진 오류 상태 코드 List에 따라 인증된 사용자에 대한 오류를 기록하는 기능을 추가합니다. 2. Custom형 SecurityConfigurer 구성자를 정의하기 시작하려면 먼저 AbstractHttpConfigurer 클래스 를 확장해야 합니다 . public class ClientErrorLoggingConfigurer exte..

Spring 2022.11.11

Spring Security의 AuthenticationManagerResolver 사용방법(예제)

1. 소개 이 사용방법(예제)에서는 AuthenticationManagerResolver 를 소개 하고 기본 및 OAuth2 인증 흐름에 사용하는 방법을 보여줍니다. 2. AuthenticationManager 란 무엇입니까 ? 간단히 말해서, AuthenticationManager 는 인증을 위한 주요 전략 인터페이스입니다. 입력 인증의 주체가 유효하고 확인된 경우 AuthenticationManager#authenticate 는 인증된 플래그가 true 로 설정된 인증 인스턴스를 반환 합니다 . 그렇지 않고 Security 주체가 유효하지 않으면 AuthenticationException 이 발생 합니다. 마지막 경우 결정할 수 없으면 null 을 반환합니다. ProviderManager 는 Auth..

Spring 2022.11.11

이유: void가 mockito 사용을 준수하도록 변수 T 유형의 인스턴스가 없습니다.

이유: void가 mockito 사용을 준수하도록 변수 T 유형의 인스턴스가 없습니다. 물어보다 1. 질문(문제점): void 메서드를 실행할 때 예외를 던지고 싶습니다. when(booking.validate(any())).thenThrow(BookingException.builder().build()); 하지만 컴파일 오류가 있습니다. Required type: T Provided: void reason: no instance(s) of type variable(s) T exist so that void conforms to T 2. 해결방안: 나는 올바른 구문을 알아 냈습니다. Service mockedService = new DefaultServie(); doNothing().when(mocked..

Spring 2022.11.11
반응형