code: public boolean populateValue(final Object target, EntityType type, final String attr, final Object value) {
      try {
        if (attr.indexOf('.') > -1) {
          ObjectAndType ot = initProperty(target, type, Strings.substringBeforeLast(attr, "."));
          String lastAttr = Strings.substringAfterLast(attr, ".");
          setProperty(ot.getObj(), lastAttr, convert(ot.getType(), lastAttr, value));
        } else {
          setProperty(target, attr, convert(type, attr, value));
        }
        return true;
      } catch (Exception e) {
        logger.warn(
            "copy property failure:[class:" + type.getEntityName() + " attr:" + attr + " value:" + value + "]:",
            e);
        return false;
      }
    }
docs: 安静的拷贝属性，如果属性非法或其他错误则记录日志