add an action in the catch block and this will be perfect
;)
Jérome.


Selon [EMAIL PROTECTED]:

> I have changed my class:
>
> public class QueryManager {
>
>  private static QueryManager queryManager = null;
>
>  private QueryRunner queryRunner = null;
>
>  private QueryManager() {
>       try {
>       queryRunner = new QueryRunner(DataSourceSingleton.getInstance()
>                                       .getDataSource());
>       } catch (Exception e) {
>       }
>  }
>
>  public static QueryManager getInstance() {
>    if (queryManager == null) {
>       queryManager = new QueryManager();
>    }
>     return queryManager;
>   }
>
>  public QueryRunner getQueryRunner() {
>    return this.queryRunner;
>  }
>
> Is what you meant?
>
> Thanks
>
>
>
>
> > sorry, another point...
> > queryRunner parameter must be a QueryManager member parameter, you have to
> > remove "static"
> >
> > Selon [EMAIL PROTECTED]:
> >
> >> i'm seeing another point. Your QueryManager does not offer the guarantee
> >> to
> >> be a
> >> singleton, you have to declare a private constructor.
> >>
> >> Jérome.
> >>
> >>
> >> Selon [EMAIL PROTECTED]:
> >>
> >> > Selon [EMAIL PROTECTED]:
> >> >
> >> > > Hi,
> >> > > I'm using a dao pattern, the call
> >> > >
> >> > > QueryManager.getInstance().getQueryRunner().query(...);
> >> > >
> >> > > is executed in my dao object.
> >> > >
> >> > > Servlet calls dao method.
> >> > >
> >> > ok.
> >> >
> >> > > What do you mean with it depends of your project size?
> >> > Hi,
> >> > If you have a small project it is not mandatory to spend a lot of time
> >> in
> >> the
> >> > abstraction layers, but this is advised. If you implement this
> >> approach,
> >> life
> >> > is
> >> > wonderful. :)
> >> >
> >> > Jérome.
> >> >
> >> > >
> >> > > Thanks a lot
> >> > >
> >> > > Diego
> >> > >
> >> > >
> >> > > > Hi,
> >> > > > It seems correct, why not, QueryRunner object is thread safe.
> >> > > > Web layer which calls integration layer directly, it's a bad
> >> design but
> >> > > > this
> >> > > > depends of your project size.
> >> > > >
> >> > > > Jérome.
> >> > > >
> >> > > >
> >> > > >
> >> > > > Selon [EMAIL PROTECTED]:
> >> > > >
> >> > > >> Hi, I'm developing a web application using DbUtils classes to
> >> execute
> >> > > >> queries and so on.
> >> > > >>
> >> > > >> I user QueryRunner class with a DataSource.
> >> > > >>
> >> > > >> I red this class is thread safe, so I implemented a Singleton to
> >> > > >> instance
> >> > > >> QueryRunner only once.
> >> > > >>
> >> > > >> This is my code:
> >> > > >>
> >> > > >> public class QueryManager {
> >> > > >>
> >> > > >>  private static QueryManager queryManager = null;
> >> > > >>
> >> > > >>  private static QueryRunner queryRunner = null;
> >> > > >>
> >> > > >>  static {
> >> > > >>    try {
> >> > > >>     queryRunner = new QueryRunner(DataSourceSingleton.getInstance()
> >> > > >>                                     .getDataSource());
> >> > > >>     } catch (Exception e) {
> >> > > >>     }
> >> > > >>  }
> >> > > >>
> >> > > >>  public static QueryManager getInstance() {
> >> > > >>     if (queryManager == null) {
> >> > > >>     queryManager = new QueryManager();
> >> > > >>     }
> >> > > >>     return queryManager;
> >> > > >>  }
> >> > > >>
> >> > > >>  public QueryRunner getQueryRunner() {
> >> > > >>    return queryRunner;
> >> > > >>  }
> >> > > >>
> >> > > >> In my servlets I use:
> >> > > >>
> >> > > >> QueryManager.getInstance().getQueryRunner().query(...);
> >> > > >>
> >> > > >> Is this correct?
> >> > > >>
> >> > > >> Which is the best practice to use QueryRunner in a web context?
> >> > > >>
> >> > > >> Thanks a lot in advance
> >> > > >>
> >> > > >>
> >> > > >>
> ---------------------------------------------------------------------
> >> > > >> To unsubscribe, e-mail: [EMAIL PROTECTED]
> >> > > >> For additional commands, e-mail: [EMAIL PROTECTED]
> >> > > >>
> >> > > >>
> >> > > >
> >> > > >
> >> > > >
> >> > > >
> ---------------------------------------------------------------------
> >> > > > To unsubscribe, e-mail: [EMAIL PROTECTED]
> >> > > > For additional commands, e-mail: [EMAIL PROTECTED]
> >> > > >
> >> > > >
> >> > >
> >> > >
> >> > >
> >> > > ---------------------------------------------------------------------
> >> > > To unsubscribe, e-mail: [EMAIL PROTECTED]
> >> > > For additional commands, e-mail: [EMAIL PROTECTED]
> >> > >
> >> > >
> >> >
> >> >
> >> >
> >> > ---------------------------------------------------------------------
> >> > To unsubscribe, e-mail: [EMAIL PROTECTED]
> >> > For additional commands, e-mail: [EMAIL PROTECTED]
> >> >
> >> >
> >>
> >>
> >>
> >> ---------------------------------------------------------------------
> >> To unsubscribe, e-mail: [EMAIL PROTECTED]
> >> For additional commands, e-mail: [EMAIL PROTECTED]
> >>
> >>
> >
> >
> >
> > ---------------------------------------------------------------------
> > To unsubscribe, e-mail: [EMAIL PROTECTED]
> > For additional commands, e-mail: [EMAIL PROTECTED]
> >
> >
>
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
>
>



---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to