private static void setSimpleField()

in spec/src/main/java/com/aliyun/dataworks/common/spec/utils/SpecDevUtil.java [474:508]


    private static void setSimpleField(Map<String, Object> ctxMap, Object object, List<Field> entityFields) {
        // parse simple type
        for (Field field : entityFields) {
            Object value = ctxMap.get(field.getName());
            if (value == null) {
                continue;
            }
            Class<?> fieldType = field.getType();
            try {
                if (fieldType.equals(Integer.TYPE) || fieldType.equals(Integer.class)) {
                    setValue(object, field, Integer.valueOf(value.toString()));
                } else if (fieldType.equals(Long.TYPE) || fieldType.equals(Long.class)) {
                    setValue(object, field, Long.valueOf(value.toString()));
                } else if (fieldType.equals(Float.TYPE) || fieldType.equals(Float.class)) {
                    setValue(object, field, Float.valueOf(value.toString()));
                } else if (fieldType.equals(Double.TYPE) || fieldType.equals(Double.class)) {
                    setValue(object, field, Double.valueOf(value.toString()));
                } else if (fieldType.equals(Boolean.TYPE) || fieldType.equals(Boolean.class)) {
                    setValue(object, field, Boolean.valueOf(value.toString()));
                } else if (fieldType.equals(Character.TYPE) || fieldType.equals(Character.class)) {
                    setValue(object, field, value.toString().charAt(0));
                } else if (fieldType.equals(String.class)) {
                    setValue(object, field, value.toString());
                } else if (fieldType.equals(BigDecimal.class)) {
                    setValue(object, field, value.toString());
                }
            } catch (Exception e) {
                throw new SpecException(e, SpecErrorCode.FIELD_SET_FAIL,
                    "Type conversion error.\n" + "Expect type: " + fieldType.getSimpleName()
                        + "\nActual value:"
                        + value);
            }

        }
    }