Java-Persistenz-API

Die Java Persistence API (abgekürzt als JPA) ist eine Java- Programmierschnittstelle, mit der Entwickler relationale Daten in Anwendungen mithilfe der Java- Plattform organisieren können .

Die Java Persistence API stammt aus der Arbeit der JSR 220- Expertengruppe .

Die Persistenz in diesem Zusammenhang umfasst drei Bereiche:

Besonderheiten

Die Java-Persistenz-API basiert im Wesentlichen auf der Verwendung von Anmerkungen , die in Java 5 eingeführt wurden. Mit ihnen können Sie auf einfache Weise Geschäftsobjekte definieren, die als Schnittstelle zwischen der Datenbank und der Anwendung als Teil eines relationalen Zuordnungsobjekts dienen können .

Diese Klasse übersetzt beispielsweise eine "Konto" -Relation in eine SQL- Datenbank  :

package org.foo.models.auth; import java.io.Serializable; import javax.persistence.Basic; import javax.persistence.Column; import javax.persistence.Entity; import javax.persistence.Id; import javax.persistence.JoinColumn; import javax.persistence.ManyToOne; import javax.persistence.NamedQueries; import javax.persistence.NamedQuery; import javax.persistence.Table; import javax.xml.bind.annotation.XmlRootElement; @Entity @Table(name = "compte") @XmlRootElement @NamedQueries({ @NamedQuery(name = "Compte.findAll", query = "SELECT a FROM Compte a"), @NamedQuery(name = "Compte.findByLogin", query = "SELECT a FROM Compte a WHERE a.login = :login"), @NamedQuery(name = "Compte.findByEmail", query = "SELECT a FROM Compte a WHERE a.email = :email")}) public class Compte implements Serializable { private static final long serialVersionUID = 1L; @Id @Basic(optional = false) @Column(name = "login") private String login; @Basic(optional = false) @Column(name = "password") private String password; @Basic(optional = false) @Column(name = "email") private String email; @JoinColumn(name = "typeProfil", referencedColumnName = "idProfil") @ManyToOne(optional = false) private Profil typeProfil; public Compte() { } public Compte(String login) { this.login = login; } public Compte(String login, String password, String email) { this.login = login; this.password = password; this.email = email; } public String getLogin() { return login; } public void setLogin(String login) { this.login = login; } public String getPassword() { return password; } public void setPassword(String password) { this.password = password; } public String getEmail() { return email; } public void setEmail(String email) { this.email = email; } public Profil getTypeProfil() { return typeProfil; } public void setTypeProfil(Profil typeProfil) { this.typeProfil = typeProfil; } }

In der Anwendung wird es dann einfach, Daten über Entitätsmanager, die von der API bereitgestellt werden, hinzuzufügen, zu ändern und zu löschen.

Siehe auch

Zum Thema passende Artikel

Externe Referenzen