Рассмотрим следующие POJO:
public class PersonVo {
private String firstName;
private String lastName;
}
private class PersonEntity {
private String fullName;
}
Используя MapStruct, я хочу создать маппер, который PersonVo
в PersonEntity
.
Мне нужно отобразить несколько исходных полей firstName
, lastName
водна цель подана fullName
.
Вот псевдокод, к которому я хочу.
[Требуется решение A]
@Mapper
public interface PersonMapper {
@Mapping(target = "fullName", source = {"firstName", "lastName"}, qualifiedByName="toFullName")
PersonEntity toEntity(PersonVo person);
@Named("toFullName")
String translateToFullName(String firstName, String lastName) {
return firstName + lastName;
}
}
[Требуется решение B]
@Mapper
public interface PersonMapper {
@Mapping(target = "fullName", source = PersonVo.class, qualifiedByName="toFullName")
PersonEntity toEntity(PersonVo person);
@Named("toFullName")
String translateToFullName(PersonVo pserson) {
return pserson.getFirstName() + pserson.getLastName();
}
}
Есть ли способ, которым это может быть достигнуто?