code: public boolean eq(Object obj) {
          if (this == obj)
              return true;
          if (obj == null)
              return false;
          if (this._getUsefulClass() != obj.getClass())
              return false;
          
          Model<?> other = (Model<?>) obj;
          Table tableinfo = this.table();
          Set<Entry<String, Object>> attrsEntrySet = this._getAttrsEntrySet();
          for (Entry<String, Object> entry : attrsEntrySet) {
              String key = entry.getKey();
              Object value = entry.getValue();
              Class<?> clazz = tableinfo.getColumnType(key);
              if (clazz == Float.class) {
              } else if (clazz == Double.class) {
              } else if (clazz == Model.class) {
              } else {
                  if (value == null) {
                      if (other.get(key) != null)
                          return false;
                  } else if (!value.equals(other.get(key)))
                      return false;
              }
          }
          return true;		
  	}
docs: check current instance is equal obj or not.[wrapper equal]
  @param obj
  @return true:equal, false:not equal.