Spring 기초 : Spring Framework, Spring Boot

커비·2024년 12월 1일
0

Spring

목록 보기
2/6

Spring Framework

Java Application Framework로 엔터프라이즈 애플리케이션 개발에 주로 사용됨
(엔터프라이즈 애플리케이션은 대규모로 복잡한 비즈니스 프로세스와 데이터를 처리하는 애플리케이션을 뜻함)

Spring Framework 등장 배경

대형 쇼핑몰 시스템(엔터프라이즈 애플리케이션)

  • 수백만 명의 고객이 동시에 상품을 검색하고 장바구니에 담고 결제를 시도
  • 많은 사용자의 요청을 한꺼번에 처리해야함
  • 서버의 성능, 신뢰성, 보안이 아주 중요
  • 모든 요소들을 고려하며 비즈니스 로직을 개발하는 것은 쉽지 않음
  • 이러한 복잡한 부분을 해결해주는 개발 환경을 제공해준다면 비즈니스 로직에만 집중할 수 있게 됨
    
    이 때 등장한 것이 Spring Framework
    
  • Spring Framework는 서버 성능, 안정성, 보안문제고도화된 수준으로 해결해줌
  • 복잡한 문제를 해결하는 대신 비즈니스 로직 개발에 집중할 수 있게 됨

Spring Framework 특징

  • 애플리케이션의 다양한 구성 요소를 유연하게 연결하고 관리할 수 있도록 해줌
  • 누구나 사용할 수 있는 오픈소스임
  • 모듈화되어 있어 필요에 따라 특정 기능만 선택적으로 사용할 수 있음
  • Java언어의 가장 큰 특징인 객체 지향 언어의 특징을 살려낸 프레임워크
    - 캡슐화
    - 상속
    - 추상화
    - 다형성

Spring Boot

Spring Framework를 기반으로 하여 간편하고 신속하게 애플리케이션을 개발할 수 있도록 도와주는 도구

Spring Boot 등장 배경

  • 스프링 프레임워크는 초기 설정과 구성 파일이 복잡하고 방대했음
  • 스프링 애플리케이션을 개발하고 배포하기 위해서는 여러가지 의존성 관리와 서버 설정이 필요함
  • 최소한의 노력으로 스프링 애플리케이션을 쉽게 개발하고 배포할 수 있는 방법이 필요했음

Spring Boot 특징

  • 자동구성 기능을 제공하여 개발자가 복잡한 설정을 직접 처리할 필요 없이 기본 설정으로도 비즈니스 로직에 집중할 수 있게 해줌
  • 내장 WAS(Tomcat)을 제공하여 애플리케이션을 별도의 서버 설정 없이 바로 실행할 수 있음
  • spring-boot-starter-web을 빌드관리도구에 추가하면 웹애플리케이션에 필요한 모든 종속성과 설정이 자동으로 구성됨
  • 라이브러리들의 버전을 명시하지 않아도 호환 가능한 버전들을 찾아 자동으로 설정해줌(버전 관련 문제를 100% 해결해주는 것은 아님)

profile
전공은 컴퓨터공학, 복수전공은 해킹보안학, 직장은 방학(파워 구직중)

0개의 댓글