백엔드/Spring

[Spring] 스프링 부트

kwang2134 2024. 9. 27. 13:51
728x90
반응형
728x90

Spring Boot

  • 스프링 프레임워크를 기반으로 한 프레임워크 
  • 애플리케이션 개발을 간소화하고 빠르게 할 수 있도록 도와줌

주요 특징

  • 자동 설정: 애플리케이션의 클래스패스에 있는 라이브러리와 설정을 기반으로 필요한 설정을 자동으로 적용
  • Standalone 애플리케이션: 독립 실행형 애플리케이션을 지원 -> 별도의 웹서버를 설정하지 않고도 내장된 톰캣이나 제티서버를 사용할 수 있음
  • 의존성 관리: Maven 또는 Gradle과 같은 빌드 도구를 통해 필요한 라이브러리를 쉽게 관리할 수 있음, 스프링 부트 스타터라는 의존성 집합을 제공 -> 특정 기능에 필요한 라이브러리를 쉽게 추가할 수 있음
  • 스프링 기반 생태계 통합: 스프링 생태계의 다양한 모듈과 쉽게 통합할 수 있음

WAR(Web Application Archive)

  • 웹 애플리케이션을 배포하기 위한 형식

용도

  • 서블릿, JSP, HTML, CSS, JavaScript 파일 등 웹 애플리케이션의 모든 구성 요소를 포함하여 웹 서버나 애플리케이션 서버에 배포하는 데 사용

구조

  • WEB-INF: 웹 애플리케이션의 구성 파일과 서블릿 클래스 파일이 포함
    • /classes: 실행 클래스, 리소스들의 모음
    • /lib: 필요한 JAR 라이브러리 파일들의 모음
    • /web.xml: 웹 서버 배치 설정 파일(선택)
  • 루트 디렉토리: 정적 리소스 (HTML, CSS, JS 등) 위치

사용 방법

  • 톰캣, 제티와 같은 웹 서버에 배포
  • 클라우드 플랫폼에 직접 업로드하여 실행

JAR(Java Archive)

  • 여러 개의 자바 클래스 파일, 메타데이터, 리소스 파일을 하나의 파일로 압축한 형식
  • 스프링 부트 사용시 보편적으로 사용되는 형식 

용도

  • 라이브러리 배포: JAR 파일은 자바 애플리케이션에서 사용할 라이브러리나 모듈을 배포하는 데 자주 사용
  • 독립 실행: MANIFEST.MF 파일에 Main-Class 속성을 지정하면, JAR 파일을 직접 실행 가능

구조

  • ZIP 형식으로 압축, 내부에는. class 파일과 함께 META-INF 디렉토리에 메타데이터가 포함

사용 방법

  • java -jar yourfile.jar 명령어를 사용해 실행
  • 스프링 부트 사용 시 내장된 라이브러리로 내장된 WAS 서버 위에서 실행

스프링 부트 - 핵심 원리와 활용 강의 | 김영한 - 인프런 강의 내용 참고

728x90

'백엔드 > Spring' 카테고리의 다른 글

[Spring] Spring Boot 외부 설정  (0) 2024.10.05
[Spring] Jar & SpringBoot Jar  (0) 2024.09.28
[Spring] Querydsl DTO & 동적 쿼리  (1) 2024.09.26
[Spring] Querydsl  (1) 2024.09.25
[Spring] Spring Data Jpa 확장 기능  (0) 2024.09.24