- 스프링은 프레임워크다.
- 스프링은 오픈소스다.
- 스프링은 IOC 컨테이너를 가진다.
- 스프링은 DI를 지원한다.
- 스프링은 엄청나게 많은 필터를 가지고 있다.
- 스프링은 MessageContertor를 가지고 있다. 기본값은 현재 Json이다.
- 스프링은 BufferedReader 와 BufferedWriter를 쉽게 사용가능하다.\
스프링은 프레임워크다
framework 를 살펴보면 frame : 틀 + work : 동작하다 이다.
풀이를 해보면 어떤 틀에서 동작하는 것이다. 틀을 제공해주고 여기에 맞춰서 개발을 하면 누구나 좋은 프로그램을 만들 수 있기 때문에 사용한다.
IOC(Inversion Of Controll)
뜻을 해석해 보면 역전의 제어이다 즉 주도권이 스프링에게 있다는 것이다.
우선 class, object, instance 에 대해 알아야 한다.
- class : 설계도
- object : 실체화가 가능한 어떤 것
- instance : 실체과 된 것
만약 가구가 있다고 해보자 가구는 추상적이다. 가구에 해당하는 의자, 침대, 책상이 있다고 하면 의자, 침대, 책상은 object에 해당한다. 이 object들이 실체화가 되면 그게 instance가 되는 것이다.
그렇다면 IOC 는 무엇일까?
만약 오브젝트를 만들어 본다고 하면
의자 chair = new 의자();
위의 chair 는 힙 메모리에 저장되어 사용 가능하게 된다. IOC는 이러한 수많은 object 들을 읽어서 직접 사용가능하게 해주는 것이다.
DI(Dependencies Injection)
위 단어를 해석해 보면 의존성 주입이라는 뜻이다.
스프링이 내가 만든 class 들을 관리하는데 내가 원하는 다른 곳에서 사용(공유)할 수 있게 해주는 것이 DI이다.
위에 있는 IOC와 연관이 되어 있다.
'Back-End > Java' 카테고리의 다른 글
스레드 (0) | 2024.07.05 |
---|---|
프로세스 (0) | 2024.07.04 |
Java HTTP 통신 (1) | 2024.06.12 |
Exception과 Transaction (0) | 2024.02.05 |
String, StringBuilder, StringBuffer 의 차이점 (0) | 2023.10.26 |