package datasources; import java.sql.Connection; import java.sql.DatabaseMetaData; import java.sql.SQLException; import javax.sql.DataSource; import org.postgresql.jdbc2.optional.SimpleDataSource; public class DataSourceExample { public static void main(String[] args) { try { // Die DataSource wird hier durch eine lokale Methode // übergeben DataSource datasource = getDataSource(); // Analog zu DriverManager holt man sich eine // Connection aus der DataSource - allerdings kann // man davon ausgehen, dass alle Verbindungsdaten // der DataSource bereits bekannt sind Connection con = datasource.getConnection(); DatabaseMetaData data = con.getMetaData(); System.out.println( "Connected to " + data.getDatabaseProductName()); con.close(); } catch (Exception e) { e.printStackTrace(); } } /** * Diese Methode liefert eine verbundene DataSource * @return DataSource * @throws SQLException */ public static DataSource getDataSource() throws SQLException { // Der JDBC-Treiber von PostgreSQL liefert eine einfache // Implementierung von DataSource. Hier die entsprechende // Klasse des eigenen JDBC-Treibers einsetzen SimpleDataSource source = new SimpleDataSource(); source.setDatabaseName("test"); source.setServerName("localhost"); source.setUser("postgres"); source.setPassword("postgres"); return source; } }