Třeba takto:

public Data mojeMetoda(final int prvniParametr, final Long druhy) {

final Data result = new Data();

SessionRes.lock(new Action() {

void run(Session session) {


        System.out.println(prvniParametr);
        System.out.println(druhy);

        result.necoNastav(10);

}});


return result;
}



Petr Burdik píše v Pá 19. 01. 2007 v 11:13 +0100:

> Pockat,
> final musi byt SessionRes, nebo ktera? Do tohoto konceptu mi to nejak  
> nesedi.
> 
> Pet
> 
> On Fri, 19 Jan 2007 11:04:09 +0100, Petr Ferschmann  
> <[EMAIL PROTECTED]> wrote:
> 
> > Musí být final.
> >
> > Petr Burdik píše v Pá 19. 01. 2007 v 08:35 +0100:
> >
> >> 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?
> >> >> >
> >> >>
> >> >>
> >> >>
> >> >
> >>
> >>
> >>
> >
> 
> 
> 

-- 
Petr Ferschmann

SoftEU s.r.o.
-----------------------------------
Sady Petatricatniku 31
301 00 Plzen
Czech Republic
-----------------------------------
Phone: +420 373 729 300
Fax:   +420 373 729 301
Cell:  +420 775 638 008
E-mail: [EMAIL PROTECTED] 

Odpovedet emailem