[Spring boot] Jakarta

brandon·2025년 6월 7일

spring-boot

목록 보기
12/15

1️⃣ Jakarta EE
Jakarta EE is the new name for what used to be called Java EE (Java Enterprise Edition).

In 2017, Oracle donated Java EE to the Eclipse Foundation, and it was renamed Jakarta EE for legal reasons (Oracle kept the "Java" trademark).

It’s a set of specifications for building enterprise-level Java applications — things like Servlets, JSP, JPA (Java Persistence API), JTA (Java Transaction API), etc.

2️⃣ Why It Matters for Spring
Spring Framework is not part of Jakarta EE, but it uses and integrates with many Jakarta EE technologies.

For example:

If you use JPA for database access with Spring Data JPA → that’s based on Jakarta Persistence API now.

If you deploy a Spring Boot app with embedded Tomcat → Tomcat uses Jakarta Servlet API.

3️⃣ The Big Change: javax. → jakarta.
Starting with Jakarta EE 9, the package names changed:

Old: javax.persistence., javax.servlet., etc.

New: jakarta.persistence., jakarta.servlet., etc.

This has caused a transition period for frameworks like Spring:

Spring Framework 5.x and Spring Boot 2.x mostly used the old javax.* packages.

Spring Framework 6.x and Spring Boot 3.x switched to Jakarta EE 9+, so now you see jakarta.* packages in your Spring apps.

Summary
👉 Jakarta in Spring mostly refers to:

The underlying Jakarta EE APIs that Spring integrates with.

The package name change (javax → jakarta) that affects your imports and dependencies.

The fact that modern versions of Spring Framework (6.x+) are aligned with Jakarta EE 9+.

profile
everything happens for a reason

0개의 댓글