code: private boolean isCompatibleType(Object value, Class<?> type) {
          // Do object check first, then primitives
          if (value == null || type.isInstance(value) || matchesPrimitive(type, value.getClass())) {
              return true;
  
          }
          return false;
  
      }
docs: ResultSet.getObject() returns an Integer object for an INT column.  The
  setter method for the property might take an Integer or a primitive int.
  This method returns true if the value can be successfully passed into
  the setter method.  Remember, Method.invoke() handles the unwrapping
  of Integer into an int.
  
  @param value The value to be passed into the setter method.
  @param type  The setter's parameter type (non-null)
  @return boolean True if the value is compatible (null => true)