For example,
a J2EE
application
should
obtain a
database
connection
as follows:
ctx = new InitialContext();
datasource = (DataSource)ctx.lookup(DB_DATASRC_REF);
conn = datasource.getConnection();
and
should avoid
obtaining a
connection
in this way:
conn = DriverManager.getConnection(CONNECT_STRING);
Every
major web
application
container
provides
pooled
database
connection
management
as part of
its resource
management
framework.
Duplicating
this
functionality
in an
application
is difficult
and error
prone, which
is part of
the reason
it is
forbidden
under the
J2EE
standard.