반응형
필터
스프링컨테이너가 들고 있는 필터를 '인터셉터'라고 부른다.
인터셉터 또한 권한을 체크한다.
어노테이션 & 리플렉션
어노테이션
어노테이션은 사전뜻대로는 주석이지만 스프링에서 어노테이션은 컴파일러가 무시하지 않고 체킹을 한다.
스프링은 어노테이션으로 객체를 생성하기도 한다.
ex)
@Component: 해당 어노테이션이 붙어있는 클래스를 메모리에 로딩해
특정 클래스에 해당 어노테이션이 붙어있으면 스프링은 그 클래스를 스캔해서
자기가 들고있는 메모리공간(heap영역, 컨테이너)에 로드한다. => IOC
@Autowired: 스프링 컨테이너에 있는 클래스를 사용하고 싶을 때사용
리플렉션
- 스프링이 B클래스를 스캔할 때 B클래스 내부에 어떤 것들이 있는지 분석하는 기법을 리플랙션이라 한다.
- 리플랙션은 어떤 메서드, 필드, 어노테이션이 있는지를 체킹한다.
또한 있는지를 체킹하는것을 넘어서 어떤 동작을 할지를 설정할수도 있다.
- 만약 @Autowired 를 발견하면 스프링 컨테이너를 쭉 읽어어서 A랑 동일한 타입의 객체가 있는지를 확인한다.
만약 A가 없다면 null을 반환, 있다면 A를 DI한다.
- 리플렉션은 런타임때 동작(분석)한다.
Class B{
@Autowired
A a;
}
'Study > SpringBoot' 카테고리의 다른 글
[문제해결] Web server failed to start. Port 000 was already in use 에러 (0) | 2022.10.21 |
---|---|
[스프링부트 개념정리] JPA의 특징(내용 추가예정..) (0) | 2022.06.22 |
[스프링부트 개념정리] Ioc, DI란 (0) | 2022.06.16 |
[Springboot] AOP처리 - 유효성검사 (0) | 2022.06.03 |
[Springboot] 댓글기능 구현 (0) | 2022.06.01 |