[Java] Spring Boot 환경에서 Keycloak 활용하기 -2 : OIDC 인증 흐름 구현(Direct Access Grants, Implicit Flow)
·
Java/IAM
해당 글에서는 Spring Boot 환경에서 Keycloak과의 연동을 통하여 OIDC 인증 흐름 구현(Direct Access Grants, Implicit Flow) 하는 방법에 대해 알아봅니다. 💡 [참고] Keycloak 초기 구성에서부터 활용방법에 대해 궁금하시면 아래의 글을 참고하시면 도움이 됩니다.분류주제URLDockerDocker Compose를 이용한 Keycloak 환경 구성 및 실행 방법https://adjh54.tistory.com/644   이해하기Keycloak 이해하기 -1 : 구성 요소, 인증 처리과정, 주요 기능https://adjh54.tistory.com/645이해하기Keycloak 이해하기 -2 : SAML/OIDC 프로토콜, 인증 흐름(Authentication f..
[Java/오류노트] Solved - Service id not legal hostname (xxxx)
·
DB/오류노트
해당 글에서는 Java에서 발생한 Service id not legal hostname 오류에 대해 해결방법에 대해 알아봅니다1) 문제점💡 문제점- 로컬 서버를 실행하는 중에 Service id not legal hostname 문제점이 발생하였습니다.- 이는 주로 Spring Cloud Feign Client를 사용하는 도중에 발생하는 문제를 의미합니다. - 서비스 ID가 올바른 호스트네임 형식이 아닐때 나타나는 문제점입니다.    2) 해결책💡 해결책- 아래와 같이 @FeignClient 어노테이션을 통해서 name, url을 지정을 하는데 “json placeholder”라는 이름으로 지정을 하였습니다.- 이는 허용되지 않은 호스트 네임에 속합니다. “특수문자나 공백”을 포함하는 경우 허용되지 ..
[Java/Short] Object to Map 변환하는 방법 : Uncheked Cast, Jackson 라이브러리 활용
·
Java/Short 개발
해당 글에서는 객체(Object)를 맵(Map) 형태로 변환하는 다양한 방법에 대해 알아봅니다.1) Object to Map 💡 Object to Map- 객체를 Map 형태로 변환하는 이유는 여러 목적으로 가지고 있습니다.- 일반적으로 Object 형태의 객체를 접근하는 방식을 좀 더 편하게 이용하기 위해서 키-값 쌍으로 이루어진 Map 형태로 데이터를 접근하는데 유용합니다.Converting Object To Map in Java | Baeldung 1. 테스트 데이터 구성💡 테스트 데이터 구성- 해당 데이터 구조는 “userInfo”라는 키 내에 properties, additionalInfo, preferences 값으로 구성이 되어 있습니다.- properties는 사용자 정보를 담는 Map..
[Java] Spring Boot Configuration Processor 활용하기 : 외부 설정 파일(yaml/yml, properties) 불러오기
·
Java/Spring Boot
해당 글에서는 Spring Boot Configuration Processor를 활용하여서 외부 설정 소스 파일(yaml/yml, properties)을 불러오는 다양한 방법에 대해 알아봅니다  1) spring-boot-configuration-processor💡 spring-boot-configuration-processor- Spring Boot 애플리케이션의 외부화된 구성 및 속성 파일에 정의된 속성에 대해 쉽게 접근하여 값을 가져오는 기능을 제공하는 라이브러리입니다.- 해당 라이브러리에서 @ConfigurationProperties 어노테이션을 통해서 적용된 클래스(class), 레코드(record)를 분석하여 메타데이터를 생성합니다. 1. 주요 특징특징설명타입 안전성컴파일 시점에서 타입 오류..
[Java] Spring Boot Security 3.x + JWT 이해하기 -4 : 로그아웃 + 토큰 블랙 리스트 활용 방법
·
Java/Spring Boot
해당 글에서는 Spring Boot Security 3.x 환경에서 JWT 기반 로그인 방법 중 로그아웃 기능과 블랙리스트를 적용하는 방법에 대해 알아봅니다. 💡 [참고] Spring Security 관련 글 및 Github Repository 경로입니다. 참고하시면 도움이 됩니다.분류상세 분류주제링크Spring Boot 2.x이론Spring Boot Security 이해하기 -1 : 2.7.x 버전 구조 및 파일 이해https://adjh54.tistory.com/91Spring Boot 2.x환경 설정Spring Boot Security 이해하기 -2 : 2.7.x 버전 구현하기https://adjh54.tistory.com/92Spring Boot 2.x이론Spring Boot Security 이..
[Java] Spring Boot Security 3.x + JWT 이해하기 -1 : 구조 및 Client / Server 처리과정
·
Java/Spring Boot
해당 환경에서는 Spring Boot Security 3.x 기준으로 JWT와 함께 이해하고 처리되는 과정에 대해 알아봅니다.   💡[참고] Spring Security 관련 글 및 Github Repository 경로입니다. 참고하시면 도움이 됩니다.분류상세 분류주제링크Spring Boot 2.x이론Spring Boot Security 이해하기 -1 : 2.7.x 버전 구조 및 파일 이해https://adjh54.tistory.com/91Spring Boot 2.x환경 설정Spring Boot Security 이해하기 -2 : 2.7.x 버전 구현하기https://adjh54.tistory.com/92Spring Boot 2.x이론Spring Boot Security 이해하기 -3: JWT(JSON ..
[Java] Spring Boot WebSocket + STOMP 이해하고 구성하기 -1: 초기 구성 및 간단 소켓 연결
·
Java/Spring Boot
해당 글에서는 Spring Boot 기반 WebSocket에 대해 이해하고 초기 설정 이후 WebScocket에 연결하는 방법에 대해 알아봅니다  1) Spring Boot WebSocket💡 Spring Boot WebSocket- Spring Framework에서 제공하는 기능으로, 실시간 양방향 통신을 가능하게 해 줍니다. Web Socket을 사용하면 서버와 클라이언트 간의 연결이 지속적으로 유지되어, 데이터를 실시간으로 주고받을 수 있습니다.- 이는 채팅 애플리케이션, 실시간 알림 시스템, 주식 거래 플랫폼 등에서 유용하게 사용됩니다.💡 [참고] 소켓 통신에 대해 궁금하시면 아래의 글을 참고하시면 도움이 됩니다. [데이터 통신] 소켓 통신(Socket Communication) 이해하기 : ..
[Java] Spring Boot 환경에서 Slack Incoming Webhook 이해하고 구성하기 -1 : 초기 구성 및 간단 메시지 전송
·
Java/Spring Boot
해당 글에서는 Spring Boot 기반의 Java를 활용하여서 Slack Incoming Webhook을 API 호출을 통해 간단한 메시지를 전송하는 방법에 대해 확인합니다.  💡[참고] Spring Boot 환경에서 Slack을 활용한 예시 글들입니다.분류링크Slack Incoming Webhook 이해하고 구성하기 -1 : 초기 구성 및 간단 메시지 전송https://adjh54.tistory.com/568Slack Incoming Webhook 이해하고 구성하기 -2 : 다양한 메시지 전송 방법https://adjh54.tistory.com/569  Spring Boot 환경에서 Slack Incoming Webhook 활용 코드 : GitRepositoryhttps://github.com/ad..
[Java] Spring Boot 3.x 환경에서 Swagger3 이해하고 적용하기 : SpringDoc OpenAPI Starter WebMVC UI 및 구성 방법
·
Java/Spring Boot
해당 글에서는 Spring Boot 3.x 버전 내에서 Swagger3을 SpringDoc OpenAPI Starter WebMVC UI를 통해 이해하고 설정하는 방법에 대해 알아봅니다.💡  [참고] Swagger에 대해 상세히 궁금하시면 아래의 글을 참고하시면 도움이 됩니다.분류링크RESTful API 설계 방법 -1 : 이해하기https://adjh54.tistory.com/150RESTful API 설계 방법 -2 : 구성하기https://adjh54.tistory.com/151Spring Boot 2.x 환경에서 Swagger 이해하고 적용하기 : SpringDoc openAPI UIhttps://adjh54.tistory.com/72Spring Boot 3.x 환경에서 Swagger3 이해하고..
[Java] Spring Boot Async 비동기 처리 이해하기 -1 : 주요 어노테이션 및 비동기 반환 유형
·
Java/Spring Boot
해당 글에서는 Spring Boot 환경에서 비동기 처리를 위한 방법에 대해 알아봅니다. 1) Spring Boot Async💡 Spring Boot Async- Spring Boot 환경에서 ‘비동기 프로그래밍’을 지원하는 기능을 의미합니다. 이를 통해서 메서드 호출이 즉시 반환되고 실제 작업은 별도의 스레드에서 비 동기적으로 실행이 됩니다.- 비동기 메서드를 사용하면 서버의 성능을 향상하고 응답 시간을 줄일 수 있습니다.- 주로 I/O 작업이 긴 시간 소요 되는 작업에 대해 별도의 스레드를 수행하며, 메인 스레드가 블로킹되지 않도록 합니다. 1. 멀티 스레드(Multi-Thread)💡 멀티 스레드(Multi-Thread)- 여러 스레드를 동시에 실행하여 작업을 ‘병렬로 처리’하는 기술을 의미합니다..