HTTP 200 OK

Memento mori & Carpe diem

Spring 4

Spring Security 주요 아키텍처 이해( Part 2)

인증 저장소 SecurityContextHolder, SecurityContext SecurityContext Authentication 객체가 저장되는 보관소로 필요 시 언제든지 Authentication 객체를 꺼내어 쓸 수 있도록 제공되는 클래스 ThreadLocal에 저장되어 아무 곳에서나 참조가 가능하도록 설계함 ThreadLocal : Thread마다 할당도니 고유 공간(공유X) 다른 Thread로부터 안전하다 get, set, remove api가 있다. set 한 이후 get할 대 장소의 제약이 없다 (ex : A메서드에서 set한 내용을 B메서드에서 get하는것이 가능하다) 인증이 완료되면 HttpSession에 저장되어 어플리케이션 전반에 걸쳐 전역적인 참조가 가능하다 HttpSessi..

Spring 2022.05.30

Spring Security 주요 아키텍처 이해( Part 1)

위임 필터 및 필터 빈 초기화 DelegatingProxyChain, FilterChainProxy Servlet Filter 흐름 요청을 받은 WAS가 Servlet Container에게 Request, Response를 던져주면, 이를 먼저 Filter에서 받아. Request에 대한 필터링를 진행하고, 서블릿에게 ServletRequest, ServletResponse를 넘겨준다. 요청에 대한 작업이 끝난 후 Response에 대한 필터링를 진행 쉽게말해, 요청과 응답에 대한 필터링을 진행한다. DelegatingProxyChain 서블릿 필터에서 서블릿 필터를 구현한 스프링 빈에게 요청을 위임해주는 대리자 역할의 서블릿 필터 서블릿 필터는 스프링에서 정의 된 빈을 주입해서 사용할 수 없다 왜냐하면..

Spring 2022.05.30

Annotation && AOP란?

Annotation이란? Annotation은 JDK 1.5부터 도입된 것으로 자바 소스 코드에 추가하여 사용할 수 있는 메타데이터의 일종입니다. 대부분이 많이 봤을 만한 @Override, @Deprecated 가 Annotation 예로 Annotation의 구현된 정보에 따라 연결되는 방향이 결정됩니다. 즉, 전체적인 소스코드의 로직을 바꾸진 않지만 Annotation의 타겟을 연결 방법이나 소스코드의 구조를 변경할 수 있습니다. Annotation의 기능을 잘 활용한다면 비즈니스 로직과 별도의 시스템 설정은 Annotation에게 위임함으로써 개발자들은 로직 구현에만 집중할 수 있습니다. 따라서 Annotation을 통해 AOP(Aspect Object Programming)을 구성할 수 있습니다..

Spring 2022.05.11

Spring IoC 컨테이너 및 Bean소개(1) [with spring docs]

Spring IoC 컨테이너와 Bean에 대한 소개 IOC 컨테이너라고 하는 스프링 컨테이너는 DI(Dependency Injection)의 관점에서는 빈 팩토리라고도 하고, 이런 빈 팩토리에 여러가지 기능을 추가한 것을 어플리케이션 컨텍스트라고 한다. 객체가 생성자, 팩토리메서드에 대한 인수 또는 팩토리 메서드에서 생성되거나 반환 된 후 개체 인스턴스에 설정된 속성을 통해서만 개체가 종속성(즉, 작업하는 다른 개체)을 정의하는 프로세스이다. 컨테이너는 Bean을 생성할 때 의존성들을 주입한다. 이 프로세스는 기본적으로 클래스 또는 Service Locator 패턴과 같은 메커니즘을 사용하여 종속성의 인스턴스화 또는 위치를 제어하는 Bean 자체(이름, Inversion of Control)이다. org..

Spring 2022.05.11