반응형 Framework & Lib/스프링21 [스프링 개념] 스프링 IOC 컨테이너, 싱글톤 레지스트리 이번 포스팅에서는 스프링 IOC 컨테이너와 싱글톤 레지스트리에 대해 알아보겠다.테스트 코드를 통한 동작 방식과 개념에 대해 알아볼 것이다. 보다 구체적이고 깊이 있는 개념에 대해 학습하고자 한다면 아래 글을 참고하기를 바란다.스프링 run 메서드를 디버깅하며 실제 동작과정을 분석한 글이다. [스프링 빈 생성 과정 분석 시리즈]스프링 빈 생성 과정 분석 [1] - Application Context(BeanFactory)스프링 빈 생성 과정 분석 [2] - BeanDefinitionRegistry, SingletonBeanRegistry스프링 빈 생성 과정 분석 [3] - BeanFactoryPostProcessor, BeanPostProcessor스프링 빈 생성 과정 분석 [4] - 디버깅 참고 자료 .. 2024. 2. 4. [스프링 개념] 동일 타입 빈, 빈 이름 중복, DI 구현 방법 1. 동일 타입 빈이 여러개인 경우 주입되는 빈 기준@Autowired를 통한 빈 주입 기준은 아래와 같다.타입 기준이름 기준의존 주입 시 해당 클래스 타입의 스프링 빈을 찾고 존재하지 않으면 이름을 기준으로 빈을 찾는다.이때, 해당 클래스 타입 또는 이름에 해당하는 객체가 없다면 에러를 발생시킨다.또한 해당 클래스 타입에 존재하는 스프링 빈이 여러개이면 이름이 일치하는 것을 찾는데 이때 이름이 일치하는 것이 없다면 스프링은 어떤 빈을 주입시킬지 판단할 수 없어 에러를 발생시킨다. 에러는 런타임에 발생된다. 스프링 의존성은 런타임 의존이기에 의존관계 설정과 관련한 모든 에러는 런타임에 나타난다.런타임 의존성에 관련한 내용은 아래 글을 확인하자.컴파일 타임 의존성과 런타임 의존성 예제. 빈이 존재하지 않는.. 2024. 1. 2. [스프링 개념] IOC, DI와 DIP IOC(Inversion of Control, 제어의 역전)제어의 역전이란 프로그램의 제어 흐름 구조가 뒤바뀌는 것이다.프로그램의 제어권이 개발자가 작성한 코드에 있는 것이 아니라 외부에 존재하는 것을 말한다.이때 프로그램의 제어권에 포함되는 내용은 사용할 객체 결정, 객체 생성, 메서드 호출 등 프로그래밍 언어로 표현할 수 있는 모든 행위를 포함한다. 제어의 역전을 통해 제어권을 외부에 넘긴다는 것은 그에 대한 책임도 넘긴다는 것이다. 예를 들면 IOC 개념이 적용된 DI(의존주입)에서 객체 생성, 의존 객체 결정, 의존 객체 주입은을 프레임워크가 대신하니이에대한 책임도 프레임워크가 갖고 개발자는 객체 생성, 사용 객체 결정에 대한 책임에서 벗어난다.(프로그래밍 코드로 책임을 벗어날 수 있다는 것이고,.. 2023. 12. 31. 스프링 시큐리티 개념 정리 스프링 시큐리티란?스프링에서 제공해주는 인증, 인가, 보안에 대한 기능을 제공해주는 프레임워크인증, 인가, 보안 처리를 가진 각각의 필터들이 체인 형태를 이루며 순차적으로 처리(웹 컨테이너의 필터에서 동작, 즉, IOC 컨테이너 들어오기 전, 디스패처 서블릿 들어오기 전)스프링 프레임워크와 독립적으로 동작 가능인증(Authentication)은 사용자의 신원을 확인하는 절차 인가(Authroization)는 인증된 사용자에게 자원에 대한 접근 권한을 부여하는 절차 스프링 시큐리티의 인증방식Credential 방식 : username, password를 이용한 방식폼 기반 로그인(아이디 비밀번호 입력하여 로그인)토큰 기반 => 다양한 인증방식 있지만 모두 Authentication 객체로 표준화된 방식 S.. 2023. 12. 6. 이전 1 2 3 4 5 6 다음 반응형