The major advantage is that by Using DataSource it allows developers to implement a DataSource class to take advantage of features like connection pooling and distributed transactions. Connection pooling can increase performance dramatically by reusing connections rather than creating a new physical connection each time a connection is requested.
Gravitation cannot be held responsible for people falling in love ~ Albert Einstein
I think its because DataSources are properties driven - i.e you can change DataSource properties in a configuration file, rather then having to change any code (since a Connection is got from a DriverManager with a URL as an arguement to whatever getConnection method is used). Don't know if there are any other advantages.
We're pleased to have you here with us on the Ranch, but there are a few rules that need to be followed, and one is that proper names are required. Please take a look at the JavaRanch Naming Policy and adjust your display name to match it.
In particular, your display name must be a first and a last name separated by a space character, and must not be obviously fictitious.