스프링부트

OneTwoThree·2022년 10월 12일
0

참고링크

스프링

Spring : 자바 기반의 웹 어플리케이션을 만들 수 있는 프레임워크

Python : Django, Ruby
JavaScript : Node.js
Java : Spring 을 이용해서 웹을 만들 수 있다.

자바 백엔드 개발자는 웹 애플리케이션을 만들 때 대부분 스프링을 사용한다.

스프링의 구조는 위 이미지와 같다.

스프링의 특징

  • 자바 객체와 라이브러리를 관리해준다. 톰캣과 같은 WAS가 내장되어 있어 자바 웹 앱을 구동할 수 있다.
  • Spring은 경량 컨테이너로 자바 객체를 직접 Spring 안에서 관리한다. 객체의 생성, 소멸 같은 주기를 관리하며 Spring 컨테이너에서 필요한 객체를 가져와 사용한다.
  • IOC : 제어의 역전
    기존의 Java 프로그램에서는 내가 객체를 만들고 함수를 호출함
    스프링에서는 스프링에게 제어를 위임해서 스프링이 객체를 만들고 메소드 호출함
  • DI : 의존성 주입
    객체 B를 사용하는 주체 A가 B를 직접 생성하는게 아니라 Spring이 B를 생성해서 사용하려는 주체 객체인 A에게 주입시켜주는 방식
    이렇게 하면 A와 B의 의존성이 줄어든다

Spring Boot

스프링부트는 스프링을 더 쉽게 이용하기 위한 도구다.
스프링을 이용해 개발할 때, 세팅할 요소들이 많다.
Spring Boot는 매우 간단하게 프로젝트를 생성할 수 있게 하여 Spring 개발을 더 쉽게 만들어준다.

유저는 스프링을 사용하기 위해서 다양한 설정을 직접 해줘야함
실행환경, 의존성 관리 등 신경써야한다.
스프링부트는 스프링의 많은 부분을 자동화했고 현재 많은 개발자들이 사용중

0개의 댓글