Სარჩევი:

რომელია უკეთესი HQL თუ კრიტერიუმი?
რომელია უკეთესი HQL თუ კრიტერიუმი?

ვიდეო: რომელია უკეთესი HQL თუ კრიტერიუმი?

ვიდეო: რომელია უკეთესი HQL თუ კრიტერიუმი?
ვიდეო: Hibernate HQL,Criteria,Restrictions and Projections 2024, ნოემბერი
Anonim

კრიტერიუმები , თეორიულად უნდა ჰქონდეს ნაკლები ზედნადები ვიდრე an HQL შეკითხვა (გარდა დასახელებული მოთხოვნებისა, რომელსაც მე მივმართავ). ეს იმიტომ კრიტერიუმები არაფრის გარჩევა არ სჭირდება. HQL მოთხოვნები ანალიზდება ANTLR-ზე დაფუძნებული პარსერით და შემდეგ მიღებული AST გადაიქცევა SQL-ად. კრიტერიუმები - არ არის საჭირო გენერირებამდე გარჩევა.

ასე რომ, რა განსხვავებაა HQL-სა და კრიტერიუმებს შორის?

HQL შეუძლია შეასრულოს როგორც შერჩეული, ასევე არჩევითი ოპერაციები. კრიტერიუმები შეგიძლიათ მხოლოდ მონაცემების არჩევა, თქვენ არ შეგიძლიათ შეასრულოთ არჩეული ოპერაციები გამოყენებით კრიტერიუმები შეკითხვებს. HQL არ აქვს პაგინაციის მხარდაჭერა, მაგრამ პაგინაციის მიღწევა შესაძლებელია კრიტერიუმები . კრიტერიუმები დაცულია SQL ინექციისგან.

მეორეც, რა სარგებელი მოაქვს Hibernate Criteria API-ს? In ჰიბერნაცია , კრიტერიუმების API აგებაში გვეხმარება კრიტერიუმები ობიექტების მოთხოვნა დინამიურად. კრიტერიუმები არის მონაცემების მოპოვების კიდევ ერთი ტექნიკა, გარდა HQL და მშობლიური SQL მოთხოვნებისა. პირველადი უპირატესობა საქართველოს კრიტერიუმების API არის ის, რომ ის ინტუიციურად შექმნილია მონაცემების მანიპულირებისთვის ყოველგვარი მყარი კოდირებული SQL განცხადებების გამოყენების გარეშე.

ანალოგიურად, შეგიძლიათ იკითხოთ, რომელია უკეთესი HQL თუ SQL?

მშობლიური SQL სულაც არ არის უფრო სწრაფი ვიდრე HQL . HQL საბოლოოდ ასევე ითარგმნება SQL (შეგიძლიათ ნახოთ გენერირებული განცხადება აპლიკაციის გაშვებისას show_sql თვისებით დაყენებული true-ზე). მონაცემთა ბაზაში წვდომა დრო იკარგება მწკრივის ძიებისას და არა მონაცემების თქვენს აპლიკაციაში გადატანისას.

როგორ ადგენთ კრიტერიუმებს?

კრიტერიუმების გამოყენება მოთხოვნაზე

  1. გახსენით თქვენი მოთხოვნა დიზაინის ხედში.
  2. შეკითხვის დიზაინის ბადეში დააწკაპუნეთ ველის კრიტერიუმების რიგზე, სადაც გსურთ კრიტერიუმის დამატება.
  3. დაამატეთ კრიტერიუმები და დააჭირეთ ENTER.
  4. დააწკაპუნეთ გაშვებაზე, რათა ნახოთ შედეგები მონაცემთა ცხრილის ხედში.

გირჩევთ: