zamykani tabulek mysql+hibernate
Pavel Nemec
nemecp4 na gmail.com
Pátek Červen 19 13:04:32 CEST 2009
2009/6/19 Lukas Barton <lukas na cnawr.cz>
> V prvnim pripade musite volat session.get. Session.load udela proxy, ktera
> se inicializuje az po pristoupeni na jeji property.
Bohuzel toto nepomaha. Bez ohledu, zda volam .load, nebo .get a zda po tom
provedu flush, tak je stale mozne rucne zmenit dany radek databaze - coz je
to cemu potrebuji zabranit
Session.flush je zbytecne, toto volani synchronizuje stav v pameti se stavem
> v DB, nikoliv naopak.
ano to se skutecne pise v javadocu a vim to. Nicmene jsem zjistil ze .flush
mimo jine take zapise aktualni zmeny provedene v ramci transakce do db.
Dokonce pokud provedu zmeny zavolam flush a pak rollback, tak tyto zmeny
nejsou vraceny.
Zacinam cist Java persistance with Hibernate, ktera mi snad da na tyto veci
odpovedi.
> session.createSQLQuerry("LOCK TABLE mytable WRITE) neudela nic, jen vytvori
> objekt SqlQuery.
> Na tomto objektu musite zavolat executeUpdate.
> Flush je zase zbytecny.
ja jsem si rikal ze se to musi executnout. Jenze jsem hledal metodu execute
:) Dik tohle uz mi funguje.
>
>
> Doporucil bych si precist tu dokumentaci celou :-)
> A javadoc vsech metod na tride Session.
No tak knizka ma 800 stran, takze tohle bude chvili trvat.
Kazdopadne dik za pomoc.
Pavel
------------- další část ---------------
HTML příloha byla odstraněna...
URL: <http://amaio.cz/pipermail/konference/attachments/20090619/54fcaa21/attachment.htm>
Další informace o konferenci Konference