Skip to main content

Jakarta Persistence 4.0 (Under development)

Release for Jakarta EE 12

Jakarta Persistence defines a standard for management of persistence and object/relational mapping in Java(R) environments.

New features, enhancements or additions

  • Add new API for working with detached entities, along with associated lifecycle callbacks
  • Add programmatic API for expressing native query result set mappings
  • New annotations for expressing named entity graphs
  • Allow entities to be loaded in read-only mode
  • Allow batch loading of entities by id
  • Add operation to obtain the number of query results
  • Add an annotation to exclude a field from optimistic locking
  • Allow @NamedQuery and @NamedNativeQuery more control over query execution
  • Allow passing an EntityGraph to refresh(), and improve usability of entity graphs
  • Make select new implicit when a query result type is given
  • Add a @PreMerge lifecycle callback
  • Add support for SequencedCollection and friends
  • Decouple entity discovery/enhancement from EntityManagerFactory initialization in container environments
  • Specify that the jakarta.persistence.database-xxxx configuration properties are available for use by the application program, and not only by containers

Removals, deprecations or backwards incompatible changes

  • Drop APIs already marked forRemoval in 3.2
  • Change return type of createNativeQuery() to TypedQuery
  • Drop use of SecurityManager
  • Clarify the format of entity names

Architectural changes

  • Donate definition of Jakarta Persistence Query Language to Jakarta Query
  • Take ownership of standalone TCK

Minimum Java SE Version

Java SE 21 or higher

Details

Ballots

Plan Review

The Specification Committee Ballot concluded successfully on 2025-04-23 with the following results.

Representative Representative for: Vote
Kenji Kazumura Fujitsu +1
Emily Jiang, Tom Watson IBM +1
Ed Bratt, Dmitry Kornilov Oracle +1
Andrew Pielage, Petr Aubrecht Payara +1
David Blevins, Jean-Louis Monteiro Tomitribe +1
Ivar Grimstad EE4J PMC +1
Marcelo Ancelmo, Abraham Marin-Perez Participant Members +1
Werner Keil Committer Members +1
Jun Qian Enterprise Members +1
Zhai Luchao Enterprise Members +1
Total 10

Non-binding Votes

Representative Representative for: Vote
Angelo Rubini Community +1
Michael Redlich Community +1
Total 2

The ballot was run on the jakarta.ee-spec mailing list

Back to the top