반응형

스프링 시큐리티 커스텀 로그아웃 핸들러

1. 개요 Spring Security 프레임워크는 매우 유연하고 강력한 인증 지원을 제공합니다 . 사용자 식별과 함께 일반적으로 사용자 로그아웃 이벤트를 처리하고 경우에 따라 일부 사용자 지정 로그아웃 동작을 추가하려고 합니다. 이러한 사용 사례 중 하나는 사용자 캐시를 무효화하거나 인증된 세션을 닫는 것입니다. 바로 이러한 목적을 위해 Spring은 LogoutHandler 인터페이스를 제공하며 이 예제에서는 사용자 정의 로그아웃 핸들러를 구현하는 방법을 살펴보겠습니다. 2. 로그아웃 요청 처리 사용자를 로그인하는 모든 웹 애플리케이션은 언젠가는 로그아웃해야 합니다. Spring Security 핸들러는 일반적으로 로그아웃 프로세스를 제어합니다 . 기본적으로 로그아웃 처리에는 두 가지 방법이 있습니다..

Spring 2022.11.27

스프링 퍼시스턴스 예제

이 예제 시리즈는 Hibernate, JPA 및 Spring Data로 예제를 설명 하는 Spring으로 지속성 을 수행하는 데 중점을 둡니다 . 스프링과 JPA/하이버네이트 Spring과 함께 최대 절전 모드 5 Spring Boot에서 프로그래밍 방식으로 데이터 소스 구성 Spring 및 JPA와의 트랜잭션 (인기) Spring @Transactional의 트랜잭션 전파 및 격리 Spring의 프로그래밍 방식 트랜잭션 관리 JPA/Hibernate 지속성 컨텍스트 Spring과 Hibernate를 사용한 DAO JPA와 스프링을 사용한 DAO Spring 및 Java Generics로 DAO 단순화 Spring Boot에서 Hibernate/JPA SQL 문 표시 Spring Boot로 초기 데이터 ..

Spring 2022.11.27

Spring의 RequestBody 및 ResponseBody 어노테이션

1. 소개 이 빠른 사용방법(예제)에서는 Spring @RequestBody 및 @ResponseBody 어노테이션에 대한 간결한 개요를 제공합니다. 2. @요청 본문 간단히 말해 @RequestBody 어노테이션은 HttpRequest 본문을 전송 또는 도메인 객체에 매핑 하여 인바운드 HttpRequest 본문을 Java 객체로 자동 역직렬화할 수 있도록 합니다. 먼저 Spring 컨트롤러 메서드를 살펴보겠습니다. @PostMapping("/request") public ResponseEntity postController( @RequestBody LoginForm loginForm) { exampleService.fakeAuthenticate(loginForm); return ResponseEnti..

Spring 2022.11.27

Spring에서 Apache Kafka 소개

1. 개요 Apache Kafka 는 분산 및 내결함성 스트림 처리 시스템입니다. 이 예제에서는 Kafka에 대한 Spring 지원과 기본 Kafka Java 클라이언트 API에 대해 제공하는 추상화 수준을 다룰 것입니다. Spring Kafka는 @KafkaListener 어노테이션 을 통해 KafkaTemplate 및 메시지 기반 POJO와 함께 간단하고 일반적인 Spring 템플릿 프로그래밍 모델을 제공합니다 . 2. 설치 및 설정 Kafka를 다운로드하고 설치하려면 여기 에서 공식 사용방법(예제)를 참조 하십시오 . 또한 pom.xml 에 spring-kafka 의존성을 추가해야 합니다 . org.springframework.kafka spring-kafka 2.7.2 이 아티팩트의 최신 버전은 ..

Spring 2022.11.27

이차 방정식의 근을 찾는 Java 프로그램

1. 개요 이 기사에서는 Java에서 이차 방정식의 해를 계산하는 방법을 살펴봅니다. 우리는 이차 방정식이 무엇인지 정의하는 것으로 시작하고, 실수 또는 복소수 시스템에서 작업하는지 여부에 관계없이 해를 계산할 것입니다. 2. 이차방정식의 해 실수 a ≠ 0, b 및 c가 주어지면 다음 이차 방정식을 고려해 보겠습니다. ax² + bx + c = 0 . 2.1. 다항식의 근 이 방정식의 해는 다항식 ax² + bx + c 의 근이라고도 합니다 . 따라서 Polynom 클래스를 정의해 보겠습니다. 계수 가 0이면 IllegalArgumentException 이 발생합니다 . public class Polynom { private double a; private double b; private double ..

Spring 2022.11.26

Java에서 부울 배열 초기화

1. 개요 Boolean은 Java의 기본 데이터 유형입니다. 일반적으로 true 또는 false 의 두 값만 가질 수 있습니다 . 이 사용방법(예제)에서는 부울 값 배열을 초기화하는 방법에 대해 설명합니다. 2. 문제 소개 문제는 매우 간단합니다. 간단히 말해서 동일한 기본값으로 부울 변수 배열을 초기화하려고 합니다. 그러나 Java에는 기본 부울 과 boxed Boolean 이라는 두 가지 "다른" 부울 유형이 있습니다 . 따라서 이 사용방법(예제)에서는 두 가지 경우를 모두 다루고 boolean 및 Boolean 배열을 초기화하는 방법을 설명합니다 . 또한 단순화를 위해 단위 테스트 어설션을 사용하여 배열 초기화가 예상대로 작동하는지 확인합니다. 다음으로 기본 부울 유형부터 시작하겠습니다. 3. 기..

Spring 2022.11.26

라우팅 및 속도 제한을 위한 API 게이트웨이로 HAProxy 사용

1. 개요 이 사용방법(예제)에서는 HAProxy를 라우팅 및 속도 제한을 위한 API 게이트웨이로 사용하는 방법을 배웁니다. 2. API 게이트웨이로서의 HAProxy API 게이트웨이는 클라이언트와 수많은 백엔드 서비스 사이에 있는 애플리케이션입니다. 리버스 프록시처럼 작동합니다 . API 호출을 해당 서비스로 라우팅합니다. 또한 서비스 Security, API 호출 속도 제한, 트래픽 모니터링, 때로는 로드 밸런싱과 같은 많은 책임을 맡을 수 있습니다. HAProxy 는 오픈 소스 소프트웨어 로드 밸런서 및 애플리케이션 제공 컨트롤러 입니다. 매우 효율적이며 업계에서 널리 사용됩니다. 다음 섹션에서는 API 게이트웨이 역할을 하도록 HAProxy를 구성합니다. 3. HAProxy를 사용한 HTTP ..

Spring 2022.11.26

Java에서 스레드의 수명 주기

1. 소개 이 기사에서는 Java의 핵심 개념인 스레드의 수명 주기에 대해 자세히 설명합니다. 스레드 실행 중 이러한 상태를 더 잘 이해하기 위해 간단한 그림 다이어그램과 실용적인 코드 스니펫을 사용할 것입니다. Java의 스레드 이해를 시작하려면 스레드 생성에 대한 이 문서 를 시작하는 것이 좋습니다. 2. 자바의 멀티스레딩 Java 언어에서 멀티스레딩은 Thread 의 핵심 개념에 의해 구동됩니다 . 수명 주기 동안 스레드는 다양한 상태를 거칩니다. 3. Java에서 스레드의 수명 주기 java.lang.Thread 클래스에는 잠재적인 상태를 정의 하는 정적 상태 열거형 이 포함되어 있습니다. 특정 시점 동안 스레드는 다음 상태 중 하나만 있을 수 있습니다. NEW – 아직 실행을 시작하지 않은 새로..

Spring 2022.11.26

GraphQL 및 Spring Boot 시작하기

1. 소개 GraphQL 은 웹 API용 REST의 대안으로 청구되는 Facebook의 비교적 새로운 개념입니다. 이 예제에서는 기존 애플리케이션에 추가하거나 새 애플리케이션에서 사용할 수 있도록 Spring Boot를 사용하여 GraphQL 서버를 설정하는 방법을 배웁니다. 2. GraphQL 이란 무엇입니까 ? 전통적인 REST API는 서버가 관리하는 리소스 개념으로 작동합니다. 다양한 HTTP 동사에 따라 일부 표준 방식으로 이러한 리소스를 조작할 수 있습니다. 이것은 API가 자원 개념에 맞는 한 매우 잘 작동하지만 그것에서 벗어나야 할 때 빠르게 무너집니다. 블로그 게시물 및 댓글 요청과 같이 클라이언트가 여러 리소스의 데이터를 동시에 필요로 하는 경우에도 문제가 발생합니다. 일반적으로 이 문..

Spring 2022.11.26

다른 이름으로 GraphQL 필드 노출

1. 개요 GraphQL 은 웹 서비스에서 통신 패턴으로 널리 사용되었습니다. GraphQL의 기본 전제는 클라이언트 측 애플리케이션에서 유연하게 사용할 수 있다는 것입니다. 이 사용방법(예제)에서는 유연성의 또 다른 측면을 살펴보겠습니다. 또한 GraphQL 필드가 다른 이름으로 노출되는 방법도 살펴보겠습니다. 2. GraphQL 스키마 다른 작성자 의 게시물 이 있는 블로그 의 예를 들어 보겠습니다 . GraphQL 스키마는 다음과 같습니다. query { recentPosts(count: 1, offset: 0){ id title text category author { id name thumbnail } } } type Post { id: ID! title: String! text: String!..

Spring 2022.11.26
반응형