我有员工对象列表 - 列表我需要将其转换为员工转移对象列表 - 列表
假设两个类中都存在字段“password” .
-
在少数情况下,我需要从Employee→EmployeeDTO中包含密码
-
在少数情况下,我不需要密码,并希望从Employee - EmployeeDTO中排除 .
示例代码段:
List<Employee> employees = employeeRepository.findAll();
// Define the target type
Type targetListType = new TypeToken<List<EmployeeDTO>>() {}.getType();
List<EmployeeDTO> employeeDTOs = modelMapper.map(employees, targetListType);
请让我知道如何跳过映射/复制字段 .
1 回答
看看条件映射的官方user manual .
简而言之:
您需要添加一个新的Mapping并使用Condition . 你的来源和说法将是:
来源:员工
目的地:EmployeeDto
首先创建并自定义您的条件 . 它会是这样的:
然后添加Mapping并使用条件:
您可以在ModelMapper GitHub存储库中找到此示例 . 作者已做了很多,并得到了很好的解释: