如何使用mapStruct仅映射指定的字段?
如果名称和名称相同,默认情况下MapStruct将映射源和目标的所有属性。尽管我们可以在@Mapping中使用ignore属性来省略任何字段映射。但这不是我想要的。我想控制映射策略。我必须指定类似
@Mapper(STRATEGY=MAPPING_STRATEGY.SPECIFIED)public interface EmployeeToEmployeeDTOMapper {
@Mappings({
@Mapping(target="id", source="id"),
@Mapping(target="name", source="name")
})
public EmployeeDTO employeeToEmployeeDTO (Employee emp);
}
现在此映射仅用于将ID和名称从源映射到目标。除非在映射注释中指定,否则不应映射其他字段。
回答:
您正在寻找的是#1392中 的功能请求。有一个待定的PR,因此可以在下一版本(1.3.0)中使用。最终的API尚未定义。跟踪问题和PR,在完成时得到通知
以上是 如何使用mapStruct仅映射指定的字段? 的全部内容, 来源链接: utcz.com/qa/435219.html