微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何将Dto的特定属性映射到另一个对象

如何解决如何将Dto的特定属性映射到另一个对象

我有一个名为 Stock Branch 的实体。现在我需要映射到dto的情况,但是dto中的一个字段来自另一个实体

public class Stock implements Identifiable {

@Id
@Basic
@GeneratedValue(strategy = GenerationType.AUTO)
private UUID id;

private String name;

private String code;

@ManyToOne(fetch = FetchType.LAZY)
private StockStatus stockStatus;
}

实体分支

 public class Branch implements Identifiable {

@Id
@Basic
@GeneratedValue(strategy = GenerationType.AUTO)
private UUID id;

private String name;

private String address;
}

和DTO StockDto

public class StockDto {

@NotNull
@EqualsAndHashCode.Include
private UUID id;

@NotBlank
private String name;

@NotNull
private String code;

@NotNull
private UUID stockStatusId;

@NotNull
private UUID branchId;
}

所以我想将实体库存映射到StockDto。这是我的映射器类

@Mapper(config = MapStructConfig.class,uses = {
StockStatusMapper.class,})
 public interface StockMapper {

@Mapping(source = "stockStatus",target = "stockStatusId")
StockDto toDto(Stock stock);
}

如何映射分支ID (实体分支的ID)? 我尝试使用@BeforeMapping和@AfterMapping,但未调用方法

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。