mapstruct 自定义转换规则

遇到一个需求,就是我费率返回给前端的时候,多余的小数位不要展示

我对象转换全是使用的mapstruct,有兴趣的可以了解一下。就是只需要自定义接口,然后在编译时生成转换逻辑的代码

这次我只是简单记录一下,特殊逻辑的时候,怎么实现自定义转换

首先,是自定义的转换逻辑

public class ConvertExpression {

    private ConvertExpression() {

    }


    public static String stripTrailingZeros(BigDecimal num){
        return num.stripTrailingZeros().toString();
    }
}

这段逻辑很简单,就只是把多余的0去掉

然后重点介绍,对应转换接口如何写

@Mapping(target = "mutableRation",expression = "java(com.fofund.oprmgt.bus.domain.convert.ConvertExpression.stripTrailingZeros(oprMgtManagerRationInfoDO.getMutableRation()))")
    @Mapping(target = "immutableRation",expression = "java(com.fofund.oprmgt.bus.domain.convert.ConvertExpression.stripTrailingZeros(oprMgtManagerRationInfoDO.getImmutableRation()))")
    ManagerDiscountBO oprMgtManagerRationInfoDOToManagerDiscountBO(OprMgtManagerRationInfoDO oprMgtManagerRationInfoDO);

划重点:expression一定要是全路径

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值