I know some data access layer patterns like:
- Table data gateway
- Row data gateway
- Active record
- Data mapper
- ...
JPA is a specification that describes management of relational data in javaee applications - https://en.wikipedia.org/wiki/Jakarta_Persistence
As "management" of relational data i imagine CRUD operations.
JPA has to be implemented. These implementations are for example: EclipseLink, Hibernate, Apache OpenJPA etc.
So, when JPA has to be implemented, it describes management of relational data and data are accessed somehow using JPA, who specifies which (if any) data access layer pattern(s) are used? JPA or implementors?