code: public int update(Object entity) {
          if (!N.isEntity(entity.getClass())) {
              throw new IllegalArgumentException("The specified parameter must be an entity with getter/setter methods");
          }
  
          Number id = ClassUtil.getPropValue(entity, ID);
  
          if (id.longValue() == 0) {
              throw new IllegalArgumentException("Please specify value for the id property");
          }
  
          return update(getTableNameByEntity(entity), entity, L.eq(ID, id));
      }
docs: Update the records in data store with the properties which have been updated/set in the specified <code>entity</code> by id property in the entity.
  if the entity implements <code>DirtyMarker</code> interface, just update the dirty properties.
  To exclude the some properties or default value, invoke {@code com.landawn.abacus.util.N#entity2Map(Object, boolean, Collection, NamingPolicy)}
  
  @param entity with getter/setter methods
  @return