Java 当使用多个源值时,是否有方法为Mapstruct指定默认输入参数?

Java 当使用多个源值时,是否有方法为Mapstruct指定默认输入参数?,java,mapstruct,Java,Mapstruct,在下面的例子中,我有两个输入对象,映射到一个输出对象。 大多数映射直接从一个输入到一个输出,只有一个映射来自另一个对象 @Mapping(source = "input.a" target = "output.a") @Mapping(source = "input.b" target = "output.b") @Mapping(source = "input.c" ta

在下面的例子中,我有两个输入对象,映射到一个输出对象。 大多数映射直接从一个输入到一个输出,只有一个映射来自另一个对象

    @Mapping(source = "input.a" target = "output.a")
    @Mapping(source = "input.b" target = "output.b")
    @Mapping(source = "input.c" target = "output.c")
    @Mapping(source = "input.d" target = "output.d")
    @Mapping(source = "extra.a" target = "output.extraa")
    Output toOutputMapper(Input input, ExtraValues extra)
有没有一种方法可以说“使用此对象作为默认值”,这样就省去了映射值的麻烦,并且放弃了Mapstruct提供的自动映射

比如:

    @Mapping(source = "extra.a" target = "output.extraa")
    Output toOutputMapper(@Default Input input, ExtraValues extra)

使用MapStruct 1.4时,您可以使用到当前目标的映射来实现所需的功能

e、 g

    @Mapping(source = "input" target = ".")
    @Mapping(source = "extra.a" target = "output.extraa")
    Output toOutputMapper(Input input, ExtraValues extra)