Spring Boot 2와 Spring Boot 3의 차이점을 알아보자.
- JDK Version
Spring Boot 3에서는 JDK 17미만의 버전을 지원하지 않습니다.
- JavaEE -> JakartaEE
Spring Boot 3는 모든 종속성을 위해 Java EE에서 Jakarta EE API로 마이그레이션 되었습니다. Jakarta EE는 엔터프라이즈 급 Java 기반 서버 사이드 애플리케이션을 개발하기 위한 표준을 의미합니다.
javax.servlet.* -> jakarta.servlet.*
javax.annotation.* -> jakarta.annotation.*
javax.transaction.* -> jakarta.transaction.*
- Java EE는 엔터프라이즈 애플리케이션 개발을 위한 Java 플랫폼 표준입니다. 서버-클라이언트 기반의 복잡한 비즈니스 애플리케이션 개발을 지원하기 위해 설계되었다. API와 인터페이스를 정의하는 표준 스펙이다.
- Spring Framework Version
Spring Boot 3는 Spring Framework 6를 기반으로 작동한다. AOT(ahead-of-time) 컴파일링과 네이티브 이미지 지원이 추가되었으며, GraalVM과의 통합으로 네이티브 애플리케이션 빌드를 지원한다.
- 네이티브 이미지 지원(GraalVM)
- GraalVM : 고성능 런타임으로, 다양한 프로그래밍 언어와 애플리케이션을 실행하기 위해 설계된 다목적 도구이다. 특히 Java 애플리케이션의 성능을 극대화하고 네이티브 이미지를 생성하는 기능으로 유명하다.
Spring Boot 3는 GraalVM 네이티브 이미지 지원이 안정화 되었다. AOT 컴파일을 통해 경량화된 네이티브 애플리케이션을 만들 수 있어, 메모리 사용량과 실행 시간이 크게 개선되었다.
'SPRING' 카테고리의 다른 글
[Spring] JWT(JSON Web Token) 방식과 주의할 점 (0) | 2025.03.05 |
---|---|
[Spring] Spring Boot Container란 무엇인가? (0) | 2024.12.26 |
[Spring] Maven vs Gradle (0) | 2024.12.24 |
[Spring] Spring Boot AutoConfiguration(자동 설정) (2) | 2024.12.23 |
[Spring Boot] 스프링(Spring) vs 스프링 부트(Spring Boot) (0) | 2024.12.23 |