Hibernate posílá moc dotazů do db – Java – Fórum – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

Hibernate posílá moc dotazů do db – Java – Fórum – Programujte.comHibernate posílá moc dotazů do db – Java – Fórum – Programujte.com

 

joe.
~ Anonymní uživatel
5 příspěvků
28. 10. 2010   #1
-
0
-

Ahoj,

nevím, jestli to je normální, ale nastíním situaci jak to mám a jak se mi to vůbec nelíbí, protože mi to zpomaluje funkčnost celého webu.

Databázi mám například tak, že mám tabulku - třeba A, která má s tabulkami B, C, D, E ... vazbu 1:N

(A... více B; A... více C; atd.)

Pokud ale si udělám dotaz v hibernatu aby mi vybral třeba nějaké záznamy z té tabulky A - jednoduše bych napsal:

SELECT * FROM A

a pokud pak výsledky procházím, automaticky to volá dotazy tak, aby k tomu dostal i výsledky z tabulek B, C, D, E, ...

To znamená, že pokud vybírám třeba 10 záznamů z tabulky A, celkem se pošle databázi cca 10 * počet svázaných tabulek ... takže kolem 40 dotazů... TO JE NORMÁLNÍ???

Přijde mi to moc přehnané. Co byste mi poradili? Nejsem v tom moc sběhlý, je to moje první práce s Hibernate...

Díky za odpovědi!

Nahlásit jako SPAM
IP: 82.100.5.–
liborb
~ Redaktor
+18
Guru
29. 10. 2010   #2
-
0
-

Když se to dotazuje na svázané výsledky, tak to samozřejmě normální je. Pokud se tomu chceš vyhnout, tak to vyřiď všechno jedním dotazem (pokud HQL umí to co SQL), a to něco na způsob:

select * from A, B, C where ID_A = B_ID_A AND ID_A = C_ID_A

Nahlásit jako SPAM
IP: 78.80.52.–
Zjistit počet nových příspěvků

Přidej příspěvek

Toto téma je starší jak čtvrt roku – přidej svůj příspěvek jen tehdy, máš-li k tématu opravdu co říct!

Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku

×Vložení zdrojáku

×Vložení obrázku

Vložit URL obrázku Vybrat obrázek na disku
Vlož URL adresu obrázku:
Klikni a vyber obrázek z počítače:

×Vložení videa

Aktuálně jsou podporována videa ze serverů YouTube, Vimeo a Dailymotion.
×
 
Podporujeme Gravatara.
Zadej URL adresu Avatara (40 x 40 px) nebo emailovou adresu pro použití Gravatara.
Email nikam neukládáme, po získání Gravatara je zahozen.
-
Pravidla pro psaní příspěvků, používej diakritiku. ENTER pro nový odstavec, SHIFT + ENTER pro nový řádek.
Sledovat nové příspěvky (pouze pro přihlášené)
Sleduj vlákno a v případě přidání nového příspěvku o tom budeš vědět mezi prvními.
Reaguješ na příspěvek:

Uživatelé prohlížející si toto vlákno

Uživatelé on-line: 0 registrovaných, 29 hostů

Podobná vlákna

Hibernate M:N — založil tomassss

Hibernate a postgresql — založil Lubo

Spring hibernate — založil Jaub

Moc velké pole — založil Hlavinka

Moderátoři diskuze

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032024 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý