728x90
Jakarta EE 9는 Java SE 9(자바 9)이 아니라 Jakarta EE(구 Java EE)의 특정 버전을 의미합니다.
📌 Jakarta EE와 Java SE(자바 버전) 차이
- Jakarta EE: 엔터프라이즈 애플리케이션을 위한 API와 사양을 포함하는 플랫폼 (ex: Servlet, JPA, CDI 등)
- Java SE: JDK와 JVM을 포함하는 기본적인 Java 플랫폼 (ex: Java 8, 11, 17, 21)
📌 Jakarta EE 9의 특징
- Java EE에서 Jakarta EE로 전환된 이후 첫 번째 주요 업데이트
- Java SE 8 이상에서 실행 가능 (Java 9가 아님!)
- 패키지 네임이 javax.* → jakarta.* 로 변경됨 (ex: javax.servlet → jakarta.servlet)
- 주요 API 변화 없이 이전 버전(Java EE 8)과의 호환성을 정리하는 역할
📌 Spring Boot 3.x와 Jakarta EE 9
- Spring Boot 3.x부터 Jakarta EE 9 이상을 기반으로 함
- 즉, javax.* 패키지 기반의 라이브러리는 더 이상 사용 불가 (jakarta.*로 변경 필요)
- Java 17 이상 필수 (Spring Boot 3.x는 Java 8, 11 지원 안 함)
📌 정리
Jakarta EE 9는 Java 9와 관계없고, Java EE의 새로운 버전입니다.
Jakarta EE 9은 Java 8 이상에서 실행 가능하며, 패키지 네임 변경이 가장 큰 특징입니다. 🚀
728x90
📌 Jakarta EE 버전 넘버링의 배경
- Java EE → Jakarta EE로 변경 (2018년)
- Java EE는 원래 Oracle이 관리하던 엔터프라이즈 자바 플랫폼이었음.
- 2017년, Oracle이 Eclipse Foundation에 Java EE 프로젝트를 이관.
- 이후, "Java EE"라는 이름을 사용할 수 없게 되어 "Jakarta EE"로 변경.
- Java EE의 기존 버전과 연속성 유지
- Java EE 마지막 공식 버전: Java EE 8 (2017년 출시)
- Jakarta EE로 이름이 바뀌었지만, 버전 넘버링을 새로 시작하면 혼란스러울 수 있음.
- 그래서 Java EE 8 → Jakarta EE 8로 그대로 유지.
- 이후 새로운 업데이트가 필요해지면서 Jakarta EE 9로 버전이 올라감.
- Jakarta EE 9의 역할
- 주요 변화 없이 **패키지 네임 변경 (javax.* → jakarta.*)**을 위한 정리 버전.
- 이후부터 본격적인 기능 개선이 들어가며 Jakarta EE 10, 11로 발전.
📌 Jakarta EE와 Java SE의 버전 비교
| Java EE / Jakarta EE 버전 | Java SE (JDK) 최소 요구 사항 |
| Java EE 6 | Java 6 |
| Java EE 7 | Java 7 |
| Java EE 8 / Jakarta EE 8 | Java 8 |
| Jakarta EE 9 | Java 8 |
| Jakarta EE 10 | Java 11 |
| Jakarta EE 11 (예정) | Java 17 |
728x90
'개발 > 자바' 카테고리의 다른 글
| Java에서 쓰레드 개수 설정: CPU 바운드 vs I/O 바운드 작업 최적화 방법 (0) | 2025.03.18 |
|---|---|
| Java 21의 새로운 기능 (0) | 2025.02.27 |
| Map 인터페이스 구현체(HashMap, TreeMap, LinkedHashMap ....) (0) | 2025.02.20 |
| 자바 제네릭(Generics)의 모든 것: T, E, K, V, N ? 와 다양한 타입 매개변수 활용법 (0) | 2025.02.20 |
| Collections : synchronized (list) {} 동기화 블록 (0) | 2025.02.20 |