1. 스프링이란?
- 스프링은 프레임워크 & 오픈소스
프레임워크는 틀이다. 틀을 벗어나는 개발을 하면 안된다.
그리고 오픈소스이다. => 공개되어있고 내부를 뜯어 고칠 수 있다. 기여도 할 수 있다
- IoC 컨테이너를 가진다.
Inversion of Control 제어의 역전이다. 주도권이 스프링에게 있다.
Class -> 설계도!
Object -> 실체화가 가능한 것!(아직 실체화 안된 것)
Instance -> 실체화가 된 것(세상에 튀어나온 것)
가구 => 의자 / 침대 => Object
의자의 주소관리는 어떻게 한다?
- DI를 지원한다.
스캔을 하면 딱 한번만 메모리에 뜨고 한번 뜬 의자를 공유해서 사용할 수 있다.
IoC와 DI를 하면 굉장히 프로그램일 짜는게 편하게 된다.
- 엄청나게 많은 필터를 가지고 있다.
- 많은 어노테이션을 가지고 있다.
- MessageConverter를 가지고 있다. 기본값은 현재 Json이다.
- BufferedReader와 BufferedWriter를 쉽게 사용할 수 있다.
- 계속 발전중이다.
필터
필터는 문지기다.
스프링 자체!
필터! (사용)
필터 (사용 x -> 사용)
직접 필터 생성 !
인터셉터(AOP)에서도 권한을 체크하고 있으면 들어가게 해주고 없으면 나가게 해준다.
컴파일 체킹도 한다.
어노테이션(주석 + 힌트) <- 컴파일러 무시 x !
// 글 ~ (주석) <- 컴파일러 무시!
리플렉션은 런타임시 분석하는 기법이다. 리플렉션시 / 필트 / 어노테이션을 보는데 어노테이션이 Autowired이면 로딩된 객체를 해당 변수에 집어넣어라는 뜻을 찾아준다.
참고: <출처: 스프링부트 개념정리 with JPA 1강 - 스프링의 핵심은 무엇인가요?>
https://www.youtube.com/watch?v=XBG6CUtVCIg&list=PL93mKxaRDidG_OIfRQ4nztPQ13y74lCYg&index=1
https://www.youtube.com/watch?v=mAFLNA9MYg8&list=PL93mKxaRDidG_OIfRQ4nztPQ13y74lCYg&index=2
'Spring > SpringBoot' 카테고리의 다른 글
ORM & 영속성 컨텍스트 & OOP 관점 모델링 & HTTP (0) | 2022.05.06 |
---|---|
MessageConverter & JPA (0) | 2022.05.06 |
도메인 분석 설계 - 엔티티 설계시 주의점 (0) | 2022.04.05 |
도메인 분석 설계 - 엔티티 클래스 개발2 (0) | 2022.04.02 |
도메인 분석 설계 - 도메인 모델과 테이블 설계 (0) | 2022.04.02 |