【发布时间】:2020-12-30 22:39:07
【问题描述】:
在 Java 中,我们有这个漂亮的库 Mapstruct。 我想知道它是否可以将字段映射到字段类型名称 + 字段 value.toString()。 假设我有两个类 ConvertFrom 和 ConvertTo。
public class ConvertFrom {
private String strValue;
private Long longValue;
}
public class ConvertTo {
private Map<String, Map<String, String>> result;
}
我希望 mapstruct 将字段 strValue 和 longValue 转换为 type as string + value.toString()。 所以我希望 mapstruct 创建的实现是这样的:
public class ConvertFromToConvertToMapper {
public ConvertTo toDto(ConvertFrom convertFrom) {
ConvertTo convertTo = new ConvertTo();
Field[] fields = ConvertFrom.class.getDeclaredFields();
for (Field field : fields) {
try {
field.setAccessible(true);
if (Objects.nonNull(field.get(convertFrom))) {
convertTo.getResult().put(field.getName(), Map.of(field.getType().getSimpleName(), field.get(convertFrom)));
}
} catch (IllegalAccessException e) {
e.printStackTrace();
}
}
return convertTo;
}
}
mupstruct 可以吗?
【问题讨论】:
标签: serialization mapping mapstruct