Spring & Spring Boot

Yeeun_Kim·2023년 4월 27일
post-thumbnail

1. Spring이란?

Spring Framework는 자바 플랫폼을 위한 오픈 소스 애플리케이션 프레임워크이다.

1-1. Spring의 특징

  • 경량 컨테이너로서 자바 객체를 직접 관리한다. 각각의 객체 생성, 소멸과 같은 라이프 사이클을 관리하며 스프링으로부터 필요한 객체를 얻어올 수 있다.
  • POJO(Plain Old Java Object) 방식의 프레임워크이다. 즉, 순수 JAVA만을 사용하여 만든 객체지향적 개발을 지향하고 있다.
  • 제어의 역전(IoC: Inversion of Control): 컨트롤의 제어권이 사용자가 아닌 프레임워크의 필요에 따라 스프링에서 사용자의 코드를 호출한다.
  • 의존성 주입(DI: Dependency Injection): 각각의 계층이나 서비스들 간에 의존성이 존재할 경우 프레임워크가 서로 연결시켜준다.
  • 관점 지향 프로그래밍(AOP: Aspect-Oriented Programming): 트랜잭션(Transaction)이나 로깅(Logging), 보안과 같이 여러 모듈에서 공통적으로 사용하는 기능의 경우 해당 기능을 분리하여 관리할 수 있다.

1-2. Spring Boot

Spring Boot는 스프링으로 애플리케이션을 만들 때에 필요한 설정을 간편하게 처리해주는 별도의 프레임워크이다.

Spring과 Spring Boot의 가장 큰 차이점은 XML설정이라고 생각한다. 실제로 처음 Spring을 배우다가 설정 때문에 꼬박 일주일을 고생했었던 경험을 해보니 Spring Boot는 백엔드를 구축하는 개발자들에게 천국(?)같은 프레임워크라고 생각한다.

0개의 댓글