Satura rādītājs:

Kurš ir labāks HQL vai kritēriji?
Kurš ir labāks HQL vai kritēriji?

Video: Kurš ir labāks HQL vai kritēriji?

Video: Kurš ir labāks HQL vai kritēriji?
Video: Easy and distinctive crochet bedspread كروشيه مفرش سرير قطعه واحده بمربع مميز 2024, Maijs
Anonim

Kritēriji , teorētiski vajadzētu būt mazākām pieskaitāmajām izmaksām nekā an HQL vaicājums (izņemot nosauktos vaicājumus, pie kuriem es nonākšu). Tas ir tāpēc, ka Kritēriji nekas nav jāparsē. HQL vaicājumi tiek parsēti ar parsētāju, kura pamatā ir ANTLR, un pēc tam iegūtais AST tiek pārvērsts par SQL. Kritēriji - Pirms ģenerēšanas nav nepieciešams parsēt.

Tikai tā, kāda ir atšķirība starp HQL un kritērijiem?

HQL var veikt gan atlasītas, gan neatlasītas darbības. Kritēriji var tikai atlasīt datus, jūs nevarat veikt darbības bez atlases, izmantojot kritērijiem vaicājumus. HQL neatbalsta lappušu kārtošanu, bet lappušu lapu var panākt ar Kritēriji . Kritēriji ir drošs pret SQL injekciju.

Otrkārt, kāds ir Hibernate Criteria API ieguvums? In Pārziemot , Kritēriju API palīdz mums veidot kritērijiem vaicājiet objektus dinamiski. Kritēriji ir vēl viens datu izguves paņēmiens, izņemot HQL un vietējos SQL vaicājumus. Primārais priekšrocība no Kritēriju API ir tas, ka tas ir intuitīvi izstrādāts, lai manipulētu ar datiem, neizmantojot nekādus cieti kodētus SQL paziņojumus.

Tāpat jūs varat jautāt, kas ir labāks HQL vai SQL?

Dzimtā SQL ne vienmēr ir ātrāks par HQL . HQL beidzot arī tiek tulkots valodā SQL (ģenerēto paziņojumu var redzēt, palaižot lietojumprogrammu ar rekvizītu show_sql, kas iestatīts uz True). Piekļuvē datubāzei laiks tiek zaudēts, meklējot rindu, nevis pārsūtot datus uz jūsu lietojumprogrammu.

Kā jūs veidojat kritērijus?

Lietojiet vaicājumam kritērijus

  1. Atveriet savu vaicājumu noformējuma skatā.
  2. Vaicājuma noformēšanas režģī noklikšķiniet uz rindas Kritēriji laukā, kuram vēlaties pievienot kritēriju.
  3. Pievienojiet kritērijus un nospiediet ENTER.
  4. Noklikšķiniet uz Palaist, lai skatītu rezultātus datu lapas skatā.

Ieteicams: