ModelMapper 库是否支持 ArrayList 或 HashSet 等集合?

2022-09-01 10:14:31

此问题与自动映射器无关。我的问题是关于Java中的ModelMapper,但是我不能为模型映射器创建新的标签,因为我的声誉很小。很抱歉造成混淆。

无论如何,我的问题是模型映射器库是否支持数组列表或哈希集之类的集合?它似乎不支持集合到集合的映射。是真的吗?


答案 1

您还可以直接映射集合 ():

    List<Person> persons = getPersons();
    // Define the target type
    java.lang.reflect.Type targetListType = new TypeToken<List<PersonDTO>>() {}.getType();
    List<PersonDTO> personDTOs = mapper.map(persons, targetListType);

有关映射泛型的文档


答案 2

或者使用Java 8:

List<Target> targetList =
    sourceList
        .stream()
        .map(source -> modelMapper.map(source, Target.class))
        .collect(Collectors.toList());

推荐