繁体   English   中英

MapStruct 子实体

[英]MapStruct Child Entity

我试图使用 mapstruct 将 DTO 转换为我的 class 表示。

class 如下所示:

public class Loan{
    private Amount total;
    private Amount paid;
}

public class Amount{
    private Long amount;
    private String currency;
}

DTO class 类似于:

public class LoanDTO{
    private Long paidAmount;
    private Long totalAmount;
    private String currency;
}

我的映射器 function 是这样的,但我不确定如何正确映射“金额”。

@Mapper
public interface ResposeMap {

    Loan toLoan(LoanDTO loanDTO);
}

如果您使用 java8 和 mapstruct 1.3(也许它在早期版本中工作),那么它可以是这样的:

@Mapper
public interface ResposeMap {

    @Mapping(target = "total.amount", source = "totalAmount")
    @Mapping(target = "total.currency", source = "currency")
    @Mapping(target = "paid.amount", source = "paidAmount")
    @Mapping(target = "paid.currency", source = "currency")
    Loan toLoan(LoanDTO loanDTO);
}

有关它的更多信息: Mapstruct 文档

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM