Giriş
Şu satırı dahil ederiz.
Örnek
Parametresiz şöyle yaparız.
Tek parametre kullanarak şöyle yaparız.
3 parametre kullanarak şöyle yaparız.
Çağırmak için şöyle yaparız.
em.createNamedQuery() kullanılır. Örnek ver.
Şu satırı dahil ederiz.
import javax.persistence.NamedQueries;
import javax.persistence.NamedQuery;
Parametreler :abc şeklinde yazılır.Örnek
Parametresiz şöyle yaparız.
@NamedQueries({
@NamedQuery(name = "father.findAll", query = "SELECT f FROM Father f")
})
ÖrnekTek parametre kullanarak şöyle yaparız.
@NamedQueries({
@NamedQuery(name = "Person.findAll", query = "SELECT p FROM Person p"),
@NamedQuery(name = "Person.findById", query = "SELECT p FROM Person p
WHERE p.id = :id")
, @NamedQuery(name = "Person.findByName", query = "SELECT p FROM
Person p WHERE p.name = :person_name")
, @NamedQuery(name = "Person.findByLastname", query = "SELECT p FROM
Person p WHERE p.lastname = :lastname")
, @NamedQuery(name = "Person.findByEmail", query = "SELECT p
FROM Person p WHERE p.email = :email")
, @NamedQuery(name = "Person.findByPhone", query = "SELECT p
FROM Person p WHERE p.phone = :phone")})
Örnek
İki parametre kullanarak şöyle yaparız.@NamedQueries(
{
@NamedQuery(
name = "validateUserQuery",
query = "from Login l where l.userName =:userName AND
l.password =:userPassword"
)
}
)
@Entity
@Table(name="login")
public class Login {
@Basic
private String userName;
@Basic
private String password;
...
}
Örnek3 parametre kullanarak şöyle yaparız.
@Entity
@Table(name = "expanditure")
@XmlRootElement
@NamedQueries({
@NamedQuery(name = "Expanditure.findAll",
query = "SELECT e FROM Expanditure e"),
@NamedQuery(name = "Expanditure.findById",
query = "SELECT e FROM Expanditure e WHERE e.id = :id"),
@NamedQuery(name = "Expanditure.findByMonthAndYear",
query = "SELECT e FROM Expanditure e WHERE e.year = :year and e.month = :month ")
})
public class Expanditure implements Serializable {
...
}
Çağırma - HibernateÇağırmak için şöyle yaparız.
String userName = ...;
String userPassword = ...;
return (Login) getSession().getNamedQuery("validateUserQuery")
.setString("userName", userName)
.setString("userPassword", userPassword).uniqueResult();
Çağırma - JPAem.createNamedQuery() kullanılır. Örnek ver.
Hiç yorum yok:
Yorum Gönder