Ahoj,
ja budu mit jeste jeden dotaz. Uz to mam pripraveno ale stejne. Jakym
zpusobem dostanes do tohoto kodu:
SessionRes.lock(new Action() {
void run(Session session) {
...
}});
promenne ktere jsou deklarovane v ramci metody ktera to vola?
U write to je vice nez dulezite a u readu taky.
Pet
On Thu, 18 Jan 2007 11:00:52 +0100, Petr Ferschmann
<[EMAIL PROTECTED]> wrote:
Zdravím,
Jen k vašemu problému. IMHO jde řešit kromě JDBC template i pomocí
"správce zdroje".
Třeba takto:
SessionRes.lock(new Action() {
void run(Session session) {
...
}});
Třídy:
public interface Action {
public void run(Session session);
}
public class SessionRes {
public static void lock(Action act) {
/* získej zdroj */
if(sessionFactory==null){
sessionFactory = (SessionFactory)
AppContextUtil.getApplicationContext().getBean("hibernateFactory");
}
Session session =
SessionFactoryUtils.doGetSession(sessionFactory,true);
try {
act.run(session);
/* uvolnění zdroje */
} finally{
SessionFactoryUtils.releaseSession(session,sessionFactory);
}
}
}
Případně více:
http://blog.softeu.cz/automaticka-sprava-zdroju/
S pozdravem
Petr Ferschmann
Petr Burdik píše v Čt 18. 01. 2007 v 10:34 +0100:
Sveho casu jsme to tu propirali :)
Vysel z toho podobny paskvil jako tento ( v naznaku )
try {
sql dotaz
} catch (Exception ex) {
} finally {
try {
close connection
} catch (Exception ex) {
} finally {
tusim ze jeste jednou close
}
}
Presne takto to nepouzivam, nemam ten vnoreny try/catch blok, ale
situace
me donutila ze tam asi bude muset byt. ale nebavi me to psat porad
dokola
tak hledam zpusob jak si praci ulehcit :) a napadlo me aspektove
programovani. Pokud najdete lepsi zpusob budu rad. Ale je to fakt pruda
t
tady tusim jedno z mist kde to pouzit.
Pet
On Thu, 18 Jan 2007 10:17:53 +0100, Roman Pichlik
<[EMAIL PROTECTED]> wrote:
>> aktualne jsem hooodne nastvany na zkusob jak se pracuje s obsluhou
>> connection i u tahani dat pres hibernate. asi vime vsichni o co jde
:).
>
> tak to teda netusim :), muzete se podelit?
>
--
Using Opera's revolutionary e-mail client: http://www.opera.com/mail/