A Driver is required to register itself with the DriverManager when it loads. Once several Drivers have been loaded, you ask the DriverManager for a Connection to a database, and the DriverManager finds the correct Driver for you by asking each Driver if it will support a particular
JDBC URL.
ie: Yes, you can support multiple SQL Drivers at the same time.
The second question is a bit harder...