首页 > 解决方案 > 在映射器类调用后自动添加派生类中的mapstruct“布尔”参数

问题描述

我正在使用 graphql 实现 Spring Boot。而且,我正在借助 map 结构将我的 graphql 请求参数映射到一个内部项目。我已经编写了映射器类,其中我将请求参数 [源] 映射到目标参数。下面是我的目标中的 POJO 实现。

例子:

public class A extends B implements Serializable {

    private String employeeId;
    private String employeeName;

}

public class B extends C implements Serializable {
    private String address;
    private String countryIsoCode;
    private Boolean isMapped; 
}

public class C implements Serializable {
    private String empRefNo;
    private ***Boolean exist***;
}

这里类“B”和“C”在 POJO 中添加了“Boolean”类型参数。我已经映射了映射器类中的所有字符串参数,并且没有映射“布尔”参数。但是当我调用我的映射器类来映射请求参数时,映射后,我的请求也添加了“存在”参数[布尔类型],而不做任何映射。但在某些情况下,请求中没有添加同样属于“布尔”类型的“isMapped”参数。当我将“exist”参数的数据类型更改为“String”时,它不会在映射器类调用后添加到请求中。

Mapstruct 自动在类“C”的请求中添加“布尔”类型参数,无需映射。有人可以帮我解决这个问题吗,谢谢!

标签: javaspring-bootmapstructmappergraphql-java

解决方案


推荐阅读