嵌套DTO要求

作为响应,我需要Employee对象,其中包含角色对象和用户对象管理器。 我只需要显示经理和角色对象的几个字段。 我不确定在显示员工DTO时如何实现。

请帮助我

public class Employee  {

    private String employeeID;
    private String firstName;
    private String lastName;
    private String email;
    private Set<Role> roles;
    private String mobileNumber;
    private String type;
    private boolean isEnable;
    private Employee supervisor;
    private List<Branch> branches;
}

我只需要经理的姓名和电子邮件,以及角色对象的几个字段

jiuyefuwu 回答:嵌套DTO要求

假设您选择使用单独的ResponseDTO。

您可以使用mapstruct将您的EmployeeDTO映射到ResponseDTO,如下所示:

@Mapper(componentModel = "spring") 
public interface EmployeeMapper { 
    ResponseDTO getResponseDTOFromEmployeeDTO(EmployeeDTO employeeDTO); 
}

如果ResponseDTO包含的字段名称与EmployeeDTO不同,则可以按如下所示映射它们。

假设在EmployeeDTO中有 employeeId ,在ResponseDTO中有 id

    @Mapper(componentModel = "spring") 
    public interface EmployeeMapper { 
        @Mappings({@Mapping(target = "id",source = "employeeId")})
        ResponseDTO getResponseDTOFromEmployeeDTO(EmployeeDTO employeeDTO); 
    }

希望这会有所帮助。

别忘了将所需的依赖项放入pom中。

本文链接:https://www.f2er.com/3112237.html

大家都在问