CodeGym/Java Course/All lectures for BN purposes/āĻ…āĻ¨ā§āĻ°ā§‹āĻ§ āĻ…āĻ¨ā§āĻ¯āĻžāĻ¨ā§āĻ¯ āĻ§āĻ°āĻ¨ā§‡āĻ°

āĻ…āĻ¨ā§āĻ°ā§‹āĻ§ āĻ…āĻ¨ā§āĻ¯āĻžāĻ¨ā§āĻ¯ āĻ§āĻ°āĻ¨ā§‡āĻ°

āĻŦāĻŋāĻĻā§āĻ¯āĻŽāĻžāĻ¨

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();
āĻŽāĻ¨ā§āĻ¤āĻŦā§āĻ¯
  • āĻœāĻ¨āĻĒā§āĻ°āĻŋā§Ÿ
  • āĻ¨āĻ¤ā§āĻ¨
  • āĻĒā§āĻ°āĻžāĻ¨ā§‹
āĻŽāĻ¨ā§āĻ¤āĻŦā§āĻ¯ āĻ˛ā§‡āĻ–āĻžāĻ° āĻœāĻ¨ā§āĻ¯ āĻ¤ā§‹āĻŽāĻžāĻ•ā§‡ āĻ…āĻŦāĻļā§āĻ¯āĻ‡ āĻ¸āĻžāĻ‡āĻ¨ āĻ‡āĻ¨ āĻ•āĻ°āĻ¤ā§‡ āĻšāĻŦā§‡
āĻāĻ‡ āĻĒāĻžāĻ¤āĻžā§Ÿ āĻāĻ–āĻ¨āĻ“ āĻ•ā§‹āĻ¨ā§‹ āĻŽāĻ¨ā§āĻ¤āĻŦā§āĻ¯ āĻ¨ā§‡āĻ‡