hi tomasz,
I dont know if I understood your question correctly, but if you look at the DriverManager classes description, you could also specify a Driver in through a Property in a properties file that will be used at load time,
As part of its initialization, the DriverManager class will attempt to load the driver classes referenced in the "jdbc.drivers" system property. This allows a user to customize the JDBC Drivers used by their applications. For example in your ~/.hotjava/properties file you might specify:
jdbc.drivers=foo.bah.Driver:wombat.sql.Driver:bad.taste.ourDriver
When the method getConnection is called, the DriverManager will attempt to locate a suitable driver from amongst those loaded at initialization and those loaded explicitly using the same classloader as the current applet or application.
So you can still provide the "Double click" comfort to your clients, by providing a list of all the Databases that will be used from Developing to
testing to production. worst is you can avoid "Class.forName" option and directly instantiate the driver class for example "org.gjt.mm.mysql.Driver = new Driver()", but this will "hard code" the Application with the MySQL database.
But thinking of the Driver loading, I think we need to some where do this loading as the dirver implementations are provided by the Database vendors.
Pros: you can keep the Application "database independent" all you need to do is specify a different driver class in your properties table.