본문 바로가기

반응형

전체 글

(66)
[Spring] Exception (예외) 처리 스프링 예외 스프링 예외는 2가지로 나뉜다: Dispatcher Servlet 외에서 발생하는 예외 Filter에서 발생하는 예외를 의미하기도 한다. Spring Security의 Filter에서 발생하는 예외가 이에 해당한다. Dispatcher SErvlet 내에서 발생하는 예외 스프링 MVC 내에서 발생하는 예외를 의미하기도 한다. 서버 개발자가 일반적으로 처리해야 하는 예외는 이에 해당한다. 예외 처리 방법: Filter에서 발생하는 에러: web.xml에서 error-page 등록 예외 처리 필터를 둔다. 예외 발생 시, HandlerExceptionResolver를 빈으로 주입받아 @ExceptionHandler에서 처리하는 방법 DispatcherServlet의 예외 처리기인 HandlerE..
[Project/OurWorldcup] release v1.0 리뷰 프로젝트 Github: https://github.com/dbwp031/OurWorldCup/tree/release/v1.0 홈페이지: https://ourworldcup.store 기간: 2023.09 (1달) 개발 스택: #Java #SpringBoot #SpringBootJpa #MySQL #OAuth2.0 #JWT #AWS 지난 한 달 동안 개발한 "우리끼리 월드컵"을 정리하고 회고하고자 합니다. 뿐 아니라, 이후 어떤 방향으로 프로젝트를 개선해 나갈지 정리하고자 합니다. 프로젝트 소개 - 개요 근래 서비스되고 있는 (이상형) 월드컵 서비스들은 사용자들의 선택 기록을 공유하지 못합니다. 자신의 지인들과 월드컵을 플레이하고 각자 어떤 선택을 했는지 비교해보는 것이 진정한 묘미인데 말이죠! 본 프로젝..
[Project/OurWorldcup] 로그인 OAuth2 + JWT - #1 도메인 추가 및 수정 본 프로젝트에서는 Spring Security 6 버전으로 OAuth2 + JWT를 사용하여 로그인 시스템을 구축하고자 합니다. 관련 링크: Github Issue: https://github.com/dbwp031/OurWorldCup/issues/10 Github Commit: https://github.com/dbwp031/OurWorldCup/commit/e3141b53ce3da88fc9794aa6675f194285182874 들어가기 앞서, 오늘 구현한 도메인들의 형태는 대략 아래 그림과 같습니다. 그리고 아래 ERD는 오늘 설명과 관련된 테이블들의 구성입니다. 1. Authority 관련 도메인 추가 Authority란 "권한"을 의미합니다. 다양한 아티클에서 Role과 많이 혼동하고 있다고 이..
[AWS] Code Deploy시 Script at specified location: scripts/deploy.sh failed to close STDOUT 에러 저는 간단한 개인 프로젝트에서 code deploy를 사용하여 배포하고 있습니다. 그런데 code deploy에서 계속 배포 실패가 되었습니다. 에러 로그는 "Script at specified location: scripts/deploy.sh failed to close STDOUT", 즉 표준 출력이 제대로 닫히지 않고 있다는 거죠. 원인 원인은 말 그대로 표준 출력이 제대로 닫히지 않고 있어서였습니다. 저는 배포 시에 로그를 기록하기 위해 아래와 같은 명령어를 사용하고 있었습니다. nohup java -jar $REPOSITORY/$JAR_NAME & 이렇게 되면 nohup 명령어로 백그라운드 프로세스를 실행하면서, 표준 출력 및 표준 에러를 제대로 리다이렉션을 하지 않게 되어서입니다. 해결 아래와..
[Spring] Dispatcher Servlet 세부 동작 분석 Dispatcher Servlet의 세부 동작을 분석한 다이어그램을 작성해보았습니다. HandlerMethodArgumentResolver에 대해 이해하기 위해 시작하였으며, 추상 클래스나 몇 개의 인터페이스는 생략하기도 했습니다.
[Spring Security] Spring Security 기본 구조
[Spring Security] Spring Security OAuth Login OAuth 2 프레임워크 OAuth는 특정 구현이나 라이브러리가 아니다. OAuth 2는 권한 부여 프레임워크이며, 종종 위임 프로토콜이라고도 부릅니다. OAuth2를 사용하면 아래와 같은 장점을 가집니다: 1. 토큰 기반 인증: 사용자의 자격 증명 대신 토큰을 기반으로 하여 인증을 합니다. 2. 더 나은 보안: 사용자의 자격 증명을 제 3 애플리케이션(우리가 서비스하는 애플리케이션)에 제공하지 않습니다. 3. 중앙 집중화된 인증: 한 번의 로그인으로 여러 서비스에 접근할 수 있습니다. Oauth2.0 유형 종류: 1. 승인 코드 -> Spring Security에서 지원하는 유형 2. 암호 3. 갱싱 토큰 4. 클라이언트 자격 증명 하지만 OAuth도 만능은 아닙니다. 아래와 같은 허점을 가집니다: 1..
[Spring] WS, WAS, Web Container, Servlet Container Web Server HTTP를 통해 클라이언트가 어떤 요청을 하면 요청에 맞는 정적 컨텐츠를 제공하는 서버, 미들웨어입니다. (미들웨어란, 애플리케이션과 운영 체제 사이에서 다양한 기능을 제공하는 소프트웨어 계층을 의미합니다. 여기서 다양한 기능이란 분산 시스템 간의 통신, 데이터 관리 등이 포함됩니다.) 주요 기능: 1. 정적 컨텐츠 제공 2. HTTP 요청 처리 3. 로드 밸런싱 4. .SSL/TLS 처리 5. 캐싱 ... Web Application Server DB 조회, 비즈니스 로직 처리를 요구하는 동적 컨텐츠를 제공하기 위해 만들어진 Application 서버, 미들웨어입니다. Web Server + Web Container로 볼 수도 있습니다. 주요 기능: 1. 동적 컨텐츠 제공 2. 비즈..

반응형