假设我有以下对象:

class Person {
    String firstName;
    String lastName;
}

class PersonBLO {
    Person person;
    Integer foo; // Some calculated business property
}

class PersonDTO {
    String firstName;
    String lastName;
    Integer foo;
}

我发现自己正在编写以下映射器:
@Mapping(target = "firstName", source = "person.firstName")
@Mapping(target = "lastName", source = "person.lastName")
PersonDTO personBLOToPersonDTO(PersonBLO personBLO);

是否可以将所有person.*属性自动映射到相应的*属性?

最佳答案

现在,在with version 1.4及以上的mapstruct中,您可以执行以下操作:

@Mapping(target = ".", source = "person")
PersonDTO personBLOToPersonDTO(PersonBLO personBLO);
它将尝试将person的所有字段映射到当前目标。

关于java - MapStruct:将嵌套对象的属性映射到属性,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/50510235/

10-11 01:07