Spring
- Framework
- 오픈소스
- IoC 컨테이너 기능
- DI 지원
- 필터
- 어노테이션
- Message Converter
- Buffered Reader & Writer
*Framework : 구조적으로 고정된 부분을 재사용할 수 있도록 하고, 응용별 특정 기능을 추가적인 사용자 작성 코드에 의해 선택적으로 구현 가능하도록 하는 포괄적인 추상 구조, 이를 지원하는 소프트웨어 플랫폼.
즉, 목적에 필요한 것을 일괄로 가져다 쓸 수 있도록 만들어 놓은 '구조화된 틀'
*IoC(Inversion of Controll / 제어권의 역전) : 객체의 생성, 생명주기 관리 등 객체에 대한 제어권이 바뀐것을 의미.
*IoC Container : 객체에 대한 생성 및 생명 주기를 관리하는 기능
- 객체의 생성을 책임지고 의존성 관리 / POJO 생성, 초기화, 서비스, 소멸에 대한 권한
*POJO (Plain Old Java Object) : 오래된 방식의 간단한 자바 오브젝트, 중량 프레임워크를 사용하면서 프레임워크에 종속된 '무거운'객체를 만들게 된 것에 반발해서 사용하는 용어. 즉, 특정 기술에 종속되지 않는 순수한 자바 객체
*DI(Dependenct Injection / 의존성 주입) : 각 클래스간 의존관계를 빈 설정(Bean Definition) 정보를 바탕으로 컨테이너가 자동으로 연결하는 것 ( Setter Injection, Constructor Injection, Method Injection)
*Bean : Spring IoC 컨테이너가 관리하는 자바 객체
*필터 : 권한 체크
*어노테이션(Annotation) : 코드 사이에 주석처럼 쓰이면서도 특별한 의미, 기능을 수행하도록 하는 것. 즉, 프로그램에게 추가적인 정보를 제공해주는 메타데이터(meta data : 데이터를 위한 데이터)
컴파일러에게 코드 작성 문법 에러 체크 정보 제공 / sw 개발툴이 빌드나 배치시 코드 자동 생성을 위한 정보 제공 / 런타임시 특정 기능을 실행하도록 정보 제공
*리플렉션(Reflection) : 클래스의 메서드, 타입, 변수들에 접근할 수 있도록 하는 자바 API, 런타임에 동적으로 클래스 정보를 추출할 수 있는 프로그래밍 기법
*Message Converter
- 요청(request) :: 자바 프로그램 ---MessageConverter---> Jason -----> ::
- 응답(response) :: 자바 프로그램 <---MessageConverter--- Jason <----- ::
*Buffered Reader : 낭비나 부족 없이 가변 길이의 문자를 받을 수 있음 (@RequestBody)
*Buffered Writer : 문자열로 가변 길이의 데이터를 쓰게 함 (@ResponseBody)
:: 참고 ::
'Spring Boot > Basic' 카테고리의 다른 글
3. Spring Boot의 동작(3) (1) | 2023.09.02 |
---|---|
3. Spring Boot의 동작(2) (0) | 2023.09.02 |
3. Spring Boot의 동작(1) (0) | 2023.08.22 |
2. JPA (0) | 2023.08.22 |