public class Parent {
private List<Children> childrens = new ArrayList<>();
//setter && getter
}
public class Children{
private Employee employee;
//setter && getter
}
public class ChildrenDTO{
private String employeeId;
private String employeeName;
......
}
public class Employee{
private String id;
private String name;
.....
}
@Mapper
public interface ParentMapper{
ParentDTO toDto(Parent parent);
}
我已经使用mapstruct
将Parent
实体映射到ParentDTO
,那么我的问题是:在调用employee
方法时,如何在ChildrenDTO中将employeeId
映射为employeeName
和parrentMapper.toDto
?
我检查了https://github.com/mapstruct/mapstruct-examples中的一个示例,但似乎他们没有我的情况。
谢谢你。
https://www.baeldung.com/mapstruct
@Mapper
public interface EmployeeMapper {
@Mappings({
@Mapping(target="employeeId", source="entity.id"),
@Mapping(target="employeeName", source="entity.name")
})
EmployeeDTO employeeToEmployeeDTO(Employee entity);
@Mappings({
@Mapping(target="id", source="dto.employeeId"),
@Mapping(target="name", source="dto.employeeName")
})
Employee employeeDTOtoEmployee(EmployeeDTO dto);
}