JPA (Java Persistence API) es un modelo de persistencia para mapear objetos Java a bases de datos relacionales usando anotaciones en lugar de archivos XML. Las principales anotaciones incluyen @Entity para marcar clases como entidades, @Id para identificar la clave primaria de una entidad, y @Basic, @OneToMany, @OneToOne, @ManyToOne y @ManyToMany para especificar atributos y relaciones. Un JPA Controller maneja las operaciones CRUD para cada clase de entidad.