如何使用mapstruct将id属性的值更改为DTO类中的等效描述



我有一个1实体类PersonEntity,与之对应的是Dto类

@Entity(value="person")
class PersonEntity{
String name;
String id;
}
**DTO** 
class PersonDto{
String name;
String id;
String desc; (This is a lookup from a map with id attribute)
}
In my mapper class, I am able to change my entity list to Dto list with below code.
public interface MyMapper{
List<PersonDto> entityListToDtoList(<List<PersonEntity>)
}

如何使用查找映射来获取DTO类中的描述和设置。我不知道如何用下面的代码来确定值。

List<PersonDto> entityListToDtoList(<List<PersonEntity>,@Context Map<String,String> lookupMap)

您必须定义PersonEntityPersonDto方法,并添加一个带有表达式的@Mapping。参见以下示例:

@Mapping( target = "desc", expression = "java(lookupMap.get(person.getId()))" )
PersonDto entityToDto(PersonEntity person, @Context Map<String, String> lookupMap);
List<PersonDto> entityListToDtoList(List<PersonEntity> persons, @Context Map<String, String> lookupMap);

相关内容

  • 没有找到相关文章

最新更新