프로그래밍/Spring
Spring Framework
어서오시우
2023. 11. 26. 02:41
728x90
스프링 프레임워크를 공부하기에 앞서, 스프링 프레임워크란 무엇이며 왜 스프링 프레임워크에 공부해야 하는지 전혀 모르기 때문에 이에 대해 먼저 간단하게 학습하고자 한다.
Spring Framework
- 스프링 프레임워크는 자바 플랫폼을 위한 오픈 소스 애플리케이션 프레임워크로서 간단히 Spring이라고도 한다.
- 자바 플랫폼이란 자바 프로그래밍 언어로 개발된 프로그램을 개발하고 실행하는 일을 쉽게 해주는 프로그램의 모임이다.
- 모든 자바 플랫폼은 JVM과 API로 구성되며, 자바 플랫폼에는 네 가지가 존재한다.
- 자파 플랫폼
- Java SE (Standard Edition)
- Java EE (Enterprise Edition)
- Java ME (Micro Edition)
- Java FX
- 동적인 웹 사이트를 개발하기 위한 여러 가지 서비스를 제공하고 있다.
- 경량 컨테이너로서 자바 객체를 직접 관리한다.
각각의 객체 생성, 소멸과 같은 라이프 사이클을 관리하며 스프링으로부터 필요한 객체를 얻어올 수 있다.
스프링의 특징
- 제어 반전( IoC : Inversion of Control )을 지원한다.
- 컨트롤의 제어권이 사용자가 아닌 프레임워크에 있어서 필요에 따라 스프링에서 사용자의 코드를 호출한다.
- 의존성 주입( DI : Dependency Injection )을 지원한다.
- 각각의 계층이나 서비스들 간에 의존성이 존재할 경우 프레임워크가 서로 연결시켜준다.
- 관점 지향 프로그래밍( AOP : Aspect-Oriented Programming )을 지원한다.
- 트랜잭션이나 로깅, 보안과 같이 여러 모듈에서 공통적으로 사용하는 기능의 경우 해당 기능을 분리하여 관리할 수 있다.
- 영속성과 관련된 다양한 서비스를 지원한다.