티스토리 뷰

1.1 핵심기능

- 의존성관리(dependency management) 간소화

- 배포(deployment) 간소화

- 자동 설정(auto configuration)

 

1.1.1 의존성관리(dependency management) 간소화

 

-  RESTful API의 의존성 : 빌드 파일에 수많은 의존성이 존재

: HTTP 엔드포인트를 만들어 요청을 수신

  요청을 처리할 메서드/함수에 해당 엔드포인트를 연결하여 적절한 응답을 반환

: JSON, XML, HTML ...

 

위의 문제를 해결하기 위해 스프링 부트와 스타터가 등장

- 스프링 부트의 스타터 개념

: 의존성 간소화

: 애플리케이션 기능 전체 추가에 필요한 작업을 줄여줌

: 오버헤드 줄여줌( 테스트, 유지보수, 업그레이드, ... )

 

1.1.2 배포 간소화 - 실행 가능한 JAR

 

ex) 비교 : 마이크로 데이터 저장소 서비스, 모놀리식 서비스

애플리케이션 서버 설치 및 설정 -> DB 드라이버 설치 -> DB 커넥션 생성 -> 커넥션 풀(connection pool) 생성

-> 빌드 및 테스트 -> 애플리케이션과 애플리케이션의 의존성을 애플리케이션에 배포

 

기존 : 단일 JAR로 결합하는 셰이딩(Shading) 방식

- 의존성에 안좋음

스프링 부트 : 중첩된 JAR

- 버전 충돌 완화

- 소프트웨어의 재패키징 및 결합으로 인한 라이선스의 법적 문제 제거

- JAR의 내용도 간단히 추출

- 배포에 용이

: 스프링 부트 플러그인이 모든 의존성을 결과JAR에 압축함

: "Java -jar <SpringBootAppName.jar>" 혹은 "<SpringBootAppName.jar> 파일명" 과 같은 명령만으로 애플리케이션 실행

 

1.1.3 자동 설정 : 설정보다 관습(convertion over configuration)

 

반복되는 특정 사례들에 의견을 제시해 생산성을 향상시킴

기본값을 쓰는 공유 프로젝트는 프로젝트 설정 시 기본값을 사용하므로 개발환경을 설정하는 시간을 절약

 

Ref. 처음부터 제대로 배우는 스프링 부트(한빛미디어)

'개발' 카테고리의 다른 글

[Web] JSP vs Servlet  (0) 2024.07.02
[Protocol] SNMP  (0) 2024.06.14
[Web] React, Spring boot 연동  (2) 2024.03.21
[SSH] 클라이언트 정리  (0) 2024.03.13
[API] REST vs SOAP  (0) 2024.03.13
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2025/04   »
1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30
글 보관함