6.1 āĻ¨āĻžāĻŽāĻ¯ā§āĻā§āĻ¤ āĻĒā§āĻ°āĻļā§āĻ¨
āĻšāĻžāĻāĻŦāĻžāĻ°āĻ¨ā§āĻ āĻāĻĒāĻ¨āĻžāĻā§ āĻā§āĻĄā§ āĻ¸āĻ°āĻžāĻ¸āĻ°āĻŋ āĻĒā§āĻ°āĻļā§āĻ¨āĻā§āĻ˛āĻŋ āĻ¸āĻāĻ°āĻā§āĻˇāĻŖ āĻāĻ°āĻ¤ā§ āĻĻā§āĻ¯āĻŧ āĻ¨āĻžāĨ¤ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤ā§, āĻ¤āĻŋāĻ¨āĻŋ āĻĒā§āĻ°āĻļā§āĻ¨ā§āĻ° āĻ¨āĻžāĻŽ āĻĻā§āĻāĻ¯āĻŧāĻžāĻ° āĻāĻŦāĻ āĻā§āĻāĻž āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻāĻ˛āĻžāĻĻāĻžāĻāĻžāĻŦā§ āĻ¸āĻāĻ°āĻā§āĻˇāĻŖ āĻāĻ°āĻžāĻ° āĻĒāĻ°āĻžāĻŽāĻ°ā§āĻļ āĻĻā§āĻ¨āĨ¤ āĻ āĻŋāĻ āĻāĻā§, āĻ¤āĻžāĻ°āĻĒāĻ° āĻ¸āĻ°āĻžāĻ¸āĻ°āĻŋ āĻ¤āĻžāĻ° āĻ¨āĻžāĻŽ āĻĻā§āĻŦāĻžāĻ°āĻž āĻĒāĻāĻ¨ā§āĻĻāĻ¸āĻ āĻ āĻ¨ā§āĻ°ā§āĻ§ āĻ¨āĻŋāĻ¨āĨ¤ āĻāĻĻāĻžāĻšāĻ°āĻŖ:
@org.hibernate.annotations.NamedQueries({
@org.hibernate.annotations.NamedQuery(name = "Employee_FindById",
query = "from Employee where id = :id"),
@org.hibernate.annotations.NamedQuery(name = "Employee_FindAllEmployes",
query = "from Employee"),
@org.hibernate.annotations.NamedQuery(name = "Employee_UpdateEmployeeName",
query = "Update Employee set name = :newName where id = :id"),
...
})
āĻ¯ā§āĻā§āĻ¨ āĻāĻ¨ā§āĻāĻŋāĻāĻŋ āĻā§āĻ˛āĻžāĻ¸ā§āĻ° āĻāĻā§ āĻā§āĻāĻž āĻ¯ā§āĻ āĻāĻ°āĻž āĻ¯ā§āĻ¤ā§ āĻĒāĻžāĻ°ā§: āĻā§āĻ¯ā§āĻ¯āĻŧāĻžāĻ°ā§ āĻ¨āĻžāĻŽ āĻā§āĻ¨ āĻ¸āĻ¤ā§āĻ¤āĻžāĻ° āĻ¸āĻžāĻĨā§ āĻāĻŦāĻĻā§āĻ§ āĻ¨āĻ¯āĻŧāĨ¤
āĻāĻĒāĻ¨āĻŋ āĻā§āĻ¯ā§āĻ¯āĻŧāĻžāĻ°ā§āĻ¤ā§ āĻŦāĻŋāĻāĻŋāĻ¨ā§āĻ¨ āĻĒā§āĻ¯āĻžāĻ°āĻžāĻŽāĻŋāĻāĻžāĻ° āĻ¯ā§āĻ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨ (āĻā§āĻ¯āĻŧā§āĻ°āĻŋ):
@org.hibernate.annotations.NamedQuery(
name = "Employee_ FindAllEmployes",
query = "from Employee",
timeout = 1,
fetchSize = 10,
cacheable = true,
cacheMode = "GET"
)
āĻāĻ āĻ§āĻ°āĻ¨ā§āĻ° āĻ
āĻ¨ā§āĻ°ā§āĻ§āĻā§āĻ˛āĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻž āĻā§āĻŦ āĻ¸āĻšāĻ - āĻāĻ° āĻāĻ¨ā§āĻ¯ āĻāĻĒāĻ¨āĻžāĻā§ createNamedQuery
āĻāĻāĻāĻŋ āĻĒāĻĻā§āĻ§āĻ¤āĻŋāĻ° āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤ā§ āĻāĻāĻāĻŋ āĻĒāĻĻā§āĻ§āĻ¤āĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻ¤ā§ āĻšāĻŦā§ createQuery
:
Query<Employee> query = session.createNamedQuery("Employee_FindAllEmployes", Employee.class);
List<Employee> resultLIst = query.list();
6.2 āĻ¨ā§āĻāĻŋāĻ āĻā§āĻ¯āĻŧā§āĻ°āĻŋ
āĻāĻŦāĻ āĻāĻ°ā§āĻāĻāĻŋ āĻ¸āĻšāĻ āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻā§āĻŦ āĻĻāĻ°āĻāĻžāĻ°ā§ āĻāĻŋāĻ¨āĻŋāĻ¸ āĻšāĻ˛ NativeQuery āĨ¤
āĻāĻĒāĻ¨āĻŋ āĻ¯āĻĻāĻŋ HQL āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻ¤ā§ āĻ¨āĻž āĻāĻžāĻ¨, āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻ¸āĻ¤ā§āĻ¤āĻž āĻŽā§āĻ¯āĻžāĻĒāĻŋāĻāĻ¯āĻŧā§āĻ° āĻāĻ¨ā§āĻ¯ āĻšāĻžāĻāĻŦāĻžāĻ°āĻ¨ā§āĻ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻ¤ā§ āĻāĻžāĻ¨, āĻ¤āĻžāĻšāĻ˛ā§ āĻāĻĒāĻ¨āĻŋ āĻāĻžāĻ˛ āĻĒā§āĻ°āĻžāĻ¨ā§ SQL āĻ āĻĒā§āĻ°āĻļā§āĻ¨ āĻ˛āĻŋāĻāĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨āĨ¤ āĻā§āĻ āĻāĻĒāĻ¨āĻžāĻā§ āĻ¸ā§āĻŽāĻžāĻŦāĻĻā§āĻ§ āĻāĻ°ā§ āĻ¨āĻžāĨ¤
createNativeQuery()
āĻāĻāĻŋ āĻāĻ°āĻžāĻ° āĻāĻ¨ā§āĻ¯, āĻāĻĒāĻ¨āĻžāĻā§ āĻāĻ° āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤ā§ āĻĒāĻĻā§āĻ§āĻ¤āĻŋāĻāĻŋ āĻāĻ˛ āĻāĻ°āĻ¤ā§ āĻšāĻŦā§ createQuery()
āĨ¤
NativeQuery<Employee> query = session.createNativeQuery("select * from employee", Employee.class);
List<Employee> resultLIst = query.list();
āĻāĻĒāĻ¨āĻŋ āĻļā§āĻ§ā§ āĻ˛āĻŋāĻā§āĻ¨ createNativeQuery
āĻāĻŦāĻ āĻ¸āĻŦāĻāĻŋāĻā§ āĻāĻā§āĻ° āĻŽāĻ¤ āĻāĻžāĻ āĻāĻ°āĻŦā§āĨ¤ āĻāĻ āĻĒāĻĻā§āĻ§āĻ¤āĻŋāĻāĻŋ NativeQuery āĻāĻžāĻāĻĒā§āĻ° āĻāĻāĻāĻŋ āĻŦāĻ¸ā§āĻ¤ā§ āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°ā§ , āĻ¯āĻž āĻā§āĻ¯āĻŧā§āĻ°āĻŋ āĻā§āĻ˛āĻžāĻ¸ āĻ¸āĻŽāĻ°ā§āĻĨāĻ¨ āĻāĻ°ā§ āĻāĻŽāĻ¨ āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻĒāĻĻā§āĻ§āĻ¤āĻŋ āĻ¸āĻŽāĻ°ā§āĻĨāĻ¨ āĻāĻ°ā§ āĨ¤ āĻāĻĒāĻ¨āĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻāĻŋāĻā§āĻ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ āĻšāĻŦā§ āĻ¨āĻž.
āĻāĻĒāĻ°āĻ¨ā§āĻ¤ā§, āĻ¨ā§āĻāĻŋāĻ āĻāĻ¸āĻāĻŋāĻāĻāĻ˛ āĻā§āĻ¯āĻŧā§āĻ°āĻŋ āĻ¨āĻžāĻŽāĻ¯ā§āĻā§āĻ¤ āĻĒā§āĻ°āĻļā§āĻ¨ āĻšāĻŋāĻ¸āĻžāĻŦā§āĻ āĻ¸āĻāĻ°āĻā§āĻˇāĻŖ āĻāĻ°āĻž āĻ¯ā§āĻ¤ā§ āĻĒāĻžāĻ°ā§ āĨ¤
@org.hibernate.annotations.NamedNativeQueries(
@org.hibernate.annotations.NamedNativeQuery(name = "Employee_GetAll",
query = "select * from employee",
resultClass = Employee.class)
)
āĻāĻŦāĻ āĻ āĻŦāĻļā§āĻ¯āĻ, āĻāĻāĻžāĻ¨ā§ āĻ¤āĻžāĻĻā§āĻ° āĻ¸āĻžāĻĨā§ āĻāĻžāĻ āĻāĻ°āĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻā§āĻĄ āĻāĻā§:
NativeQuery<Employee> query = session.createNamedQuery("Employee_GetAll", Employee.class);
List<Employee> resultLIst = query.list();