code: public static Object invokeJdbcMethod(Method method, Object target, Object... args) throws SQLException {
  		try {
  			return method.invoke(target, args);
  		}
  		catch (IllegalAccessException ex) {
  			handleReflectionException(ex);
  		}
  		catch (InvocationTargetException ex) {
  			if (ex.getTargetException() instanceof SQLException) {
  				throw (SQLException) ex.getTargetException();
  			}
  			handleInvocationTargetException(ex);
  		}
  		throw new IllegalStateException("Should never get here");
  	}
docs: Invoke the specified JDBC API {@link Method} against the supplied target
  object with the supplied arguments.
  @param method the method to invoke
  @param target the target object to invoke the method on
  @param args the invocation arguments (may be {@code null})
  @return the invocation result, if any
  @throws SQLException the JDBC API SQLException to rethrow (if any)
  @see #invokeMethod(java.lang.reflect.Method, Object, Object[])