Junior — Middle
Կարող եք բացատրել, թե ինչ է անվանված հարցումը Hibernate-ում և ինչպես է այն կիրառվում:
sobes.tech AI
Պատասխան AI-ից
Hibernate-ում անվանված հարցումը նախապես սահմանված (HQL կամ SQL) հարցում է, որի համար նշանակվել է յուրահատուկ անուն և որը կարող է բազմիցս օգտագործվել կոդում: Այդպիսի հարցումը սովորաբար հայտարարվում է @NamedQuery նշանավորումների կամ XML կոնֆիգուրացիայի միջոցով:
Անվանված հարցումների առավելությունները՝
- նույն հարցումը կրկնակի օգտագործում տարբեր վայրերում:
- կենտրոնական կառավարում հարցումների:
- հնարավոր է ստուգել հարցման սինտաքսիսը ծրագրի բեռնումիս:
Նմուշ՝ նշանավորումների միջոցով անվանված հարցում հայտարարելու:
@Entity
@NamedQuery(
name = "User.findByEmail",
query = "FROM User u WHERE u.email = :email"
)
public class User {
@Id
private Long id;
private String email;
// getter և setter
}
Կոդում օգտագործում:
Query query = session.createNamedQuery("User.findByEmail");
query.setParameter("email", "example@mail.com");
User user = (User) query.uniqueResult();