A built-in repository supertype for performing basic operations on entities.
The type parameters of BasicRepository<T,K> capture the primary entity type (T) for the repository
and the type of the unique identifier attribute (K) of the primary entity type.
The primary entity type is used for repository methods, such as countBy... and deleteBy..., which
do not explicitly specify an entity type.
Example entity:
@Entity
public class Employee {
@Id
public int badgeNumber;
public String firstName;
public String lastName;
...
}
Example repository:
@Repository
public interface Employees extends BasicRepository<Employee, Integer> {
boolean deleteByBadgeNumber(int badgeNum);
...
}
Example usage:
@Inject
Employees employees;
...
Employee emp = ...
emp = employees.save(emp);
boolean deleted = employees.deleteByBadgeNumber(emp.badgeNum);
PageRequest pageRequest = PageRequest.ofSize(25);
Order<Employee> sorts = Order.by(Sort.asc("name"));
Page<Employee> page = people.findAll(pageRequest, sorts);
The module Javadoc provides an overview of Jakarta Data.
| Modifier and Type | Method and Description |
|---|---|
| public void | |
| public void | |
| public void | deleteById(K
must not be id)null.Deletes the entity with the given Id. If the entity is not found in the persistence store it is silently ignored. |
| public Stream | Returns: a stream of all entities; will never benull.Retrieves all persistent entities of the specified type from the database. |
| public Page | Returns: a page of entities; will never benull.the request for a paginated result; must not be pageRequest, Order<T> null.sort criteria that must deterministically order the results; must not be sortBy)null.Returns a |
| public Optional | Returns: the entity with the given Id orOptional#empty() if none is found.must not be id)null.Retrieves an entity by its Id. |
| public < Type of the entity to save. S extends T> S | Returns: The saved entity; nevernull.The entity to be saved. Must not be entity)null.Saves a given entity to the database. |
| public < Type of entity to save. S extends T> List |
| delete | back to summary |
|---|---|
| public void delete(T entity) Deletes a given entity. Deletion is performed by matching the Id, and if the entity is
versioned (for example, with
| |
| deleteAll | back to summary |
|---|---|
| public void deleteAll(List<? extends T> entities) Deletes the given entities. Deletion of each entity is performed by matching the unique identifier,
and if the entity is versioned (for example, with
| |
| deleteById | back to summary |
|---|---|
| public void deleteById(K id) Deletes the entity with the given Id. If the entity is not found in the persistence store it is silently ignored.
| |
| findAll | back to summary |
|---|---|
| public Stream Retrieves all persistent entities of the specified type from the database.
| |
| findAll | back to summary |
|---|---|
| public Page Returns a
| |
| findById | back to summary |
|---|---|
| public Optional Retrieves an entity by its Id.
| |
| save | back to summary |
|---|---|
| public <S extends T> S save(S entity) Saves a given entity to the database. If the entity has an Id or key that exists in the database, the method will update the existing record. Otherwise, it will insert a new record. If the entity has a non-null Id, the method will attempt to update the existing record in the database. If the entity does not exist in the database or has a null Id, then this method will insert a new record into the database. The entity instance that is returned as a result value of this method must be updated with all automatically generated values and incremented values that changed due to the save. After invoking this method, do not continue to use the entity value that is supplied as a parameter. This method makes no guarantees about the state of the entity value that is supplied as a parameter. If the entity uses optimistic locking and the version differs from the version in the database,
an
| |
| saveAll | back to summary |
|---|---|
| public <S extends T> List Saves all given entities to the database. If an entity has a non-null Id that exists in the database, the method will update the existing record. Otherwise, it will insert a new record. If an entity has a non-null Id, this method will attempt to update the existing record in the database. If an entity does not exist in the database or has a null Id, then this method inserts a new record into the database. The entity instances that are returned as a result of this method must be updated with all automatically generated values and incremented values that changed due to the save. After invoking this method, do not continue to use the entity values that are supplied in the parameter. This method makes no guarantees about the state of the entity values that are supplied in the parameter.
| |