private static java.sql.Connection connect(String endpoint, String driver,
			String user, String pwd) {

		// Dem DriverManager den Driver der DBMS geben.
		try {
			Class.forName(driver);
		} catch (ClassNotFoundException e) {
			LogHandler.writeStackTrace(Logger.getGlobal(), e, Level.SEVERE);
			return null;
		}

		SPARQLConnection con = null;
		java.sql.Connection internCon = null;
		// Ist user und pwd nicht null, soll die Verbindung mit user und pwd
		// geschehen
		try {
		if (user != null && pwd != null) {
			// Verbindet mit der DB
			internCon = DriverManager.getConnection(jdbcPrefix + endpoint, user,
					pwd);
			// Virtuoso braucht den Usernamen explizit und akzeptiert den nicht
			// in der URI
			con = (SPARQLConnection) internCon;
			con.setUsername(user);
		} else {
			// Verbindet mit der DB
			internCon = DriverManager.getConnection(jdbcPrefix + endpoint);
			con = (SPARQLConnection) internCon;
		}
		} catch (SQLException e) {
			LogHandler.writeStackTrace(Logger.getGlobal(), e, Level.SEVERE);
			return null;
		}
		return con;
	}