【发布时间】:2019-08-23 04:30:07
【问题描述】:
我在我的项目中使用 Mapstruct。在其中一个实体中,我设置了 [oneToMany] 结构。当我在存储库中使用 findAll() 检索所有数据时,如果没有绑定,则返回一个空的 HashSet。
Mapstuct 映射 DTO 上的实体,当它遇到空 Set 时,它会给出 NullPointException 异常。在创建的映射器中有一个条件,如果 HashSet 为 null 则返回 nulla,但这里是一个空集合。 如何在 DTO 上映射实体,以便在空集合的情况下返回 nulla?
简单代码:
实体:
public class Employee{
....
private Set workplaces;
...
}
地图结构:
@Mapper(componentModel = "spring")
public interface EmployeeMapper{
EmployeeDTO toDTOFromEntity(Employee employee);
}
【问题讨论】: