Orika将两个String字段映射为一个-考虑到其余字段

che*_*bad 3 java orika

我有这样的情况:

class Person {
    String firstName;
    String lastName;
    Integer age;
    Float height;
//seters, getters, etc.
}

class PersonDto{
     String name; // it should be: firstName + " " + lastName
     Integer personAge;
     Float height;
}
Run Code Online (Sandbox Code Playgroud)

如何映射Person-> PersonDto所有字段?

Sid*_*idi 7

您可以使用 :

mapperFactory.classMap(Person.class, PersonDTO.class)
.field("age","personAge")
.byDefault()
.customize(
   new CustomMapper<Person, PersonDTO> {
      public void mapAtoB(Person a, PersonDTO b, MappingContext context) {
         b.setName(a.getFirstName()+ " "+a.getLastName());
      } 
   })
.register();
Run Code Online (Sandbox Code Playgroud)