Skip to main content

Jakarta Data 1.0

Release for Jakarta EE 11

The Jakarta Data specification provides an API for easier data access. A Java developer can split the persistence from the model with several features, such as the ability to compose custom query methods on a Repository interface.

Jakarta Data’s goal is to provide a familiar and consistent, Jakarta-based programming model for data access while still retaining the particular traits of the underlying data store.

Goals

  • Increase productivity performing common database operations
  • Rich Object Mapping integrated
  • Define Repositories
@Repository
public interface Garage extends BasicRepository<Car, Long> {

  List<Car> findByType(CarType type);

  Optional<Car> findByName(String name);

}
...

@Inject
Garage garage;
...
Car ferrari = Car.id(10L).name("Ferrari").type(CarType.SPORT);
garage.save(ferrari);

New features, enhancements or additions

  • Define the Repository pattern
  • Allows pagination on Repository
  • Enhance type safety with a StaticMetamodel
  • Define platform integrations with CDI, Persistence, NoSQL, Transactions, and Validation
  • Produce a TCK with the ability to run against the following matrix:
    • Profiles: none (standalone), core, web, platform
    • Entities: persistence, nosql

Removals, deprecations or backwards incompatible changes

None - first release

Minimum Java SE Version

  • Java SE 17 or higher

Details

Compatible Implementations

Ballots

Release Review

The Specification Committee Ballot concluded successfully on 2024-06-06 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
Dr. Jun Qian Enterprise Members +1
Zhai Luchao Enterprise Members +1
Total 10

Non-binding votes

Representative Representative for: Vote
Angelo Rubini Community +1
Total 1

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

Plan Review

The Specification Committee Ballot concluded successfully on 2023-04-03 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 no vote
Ivar Grimstad EE4J PMC +1
Marcelo Ancelmo, Abraham Marin-Perez Participant Members +1
Werner Keil Committer Members +1
Zhai Luchao Enterprise Members +1
Scott Stark, Scott Marlow Enterprise Members no vote
Total 8

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

Release Review

TBD

Back to the top