Мазмұнға өту

Java Persistence API

Уикипедия — ашық энциклопедиясынан алынған мәлімет

Java Persistence API - Java тілінде бағдарламалық жасақтама фреймворкі, бұл фрейворк Java SE және Java EE платформаларында реляциялық ақпарат модельдерін басқару қызметін атқарады.

Нысан (Entity) — @Entity аннотациясы арқылы немесе XML арқылы дерекқормен байланыс құрған POJO классы.

Бұл класста:

  • Бос конструктор (public или protected), өзге конструкторлар болуы мүмкін
  • Басқа бір класстың бір бөлігі, ішкі класы бола алмайды, интерфейс бола алмайды, enum бола алмайды
  • Кем дегенде бір @Id бар болуы қажет.
  • Мұрагер класс бола алмайды және мұралана алмайды

Аннотация қолдану мысалы

[өңдеу | қайнарын өңдеу]

Java Persistence API аннотациялар арқылы бизнес-объекттерді тауып дерекқормен қосымша арасында интерфейс қызметін атқарады:

package org.foo.models.auth; import java.io.Serializable; import java.util.Date; import java.util.List; 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; import javax.xml.bind.annotation.XmlTransient; @Entity @Table(name = "account") @XmlRootElement @NamedQueries({  @NamedQuery(name = "Account.findAll", query = "SELECT a FROM Account a"),  @NamedQuery(name = "Account.findByLogin", query = "SELECT a FROM Account a WHERE a.login = :login"),  @NamedQuery(name = "Account.findByEmail", query = "SELECT a FROM Account a WHERE a.email = :email")}) public class Account 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 Account() {  }  public Account(String login) {  this.login = login;  }  public Account(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;  }   } 

Тағы қараңыз

[өңдеу | қайнарын өңдеу]

Сілттемелер

[өңдеу | қайнарын өңдеу]