我正在开发 Spring Boot 应用程序,其中有两个类,即 A 和 B。
import math
zy = math.floor(z1 * 10)/10.0
zx = round(z1 - zy,2)
@Data
class A{
int id;
String name;
}
我需要使用 @Data
class B{
int bId;
A a;
}
映射 B
类的字段,即 a
。如何将源类 mapstruct
映射到目标字段 A
以及类 a
。
示例映射器将类似于
B
答案 0 :(得分:1)
您可以使用 @AfterMapping
,如下所示:
@Mapping(source="id", target="bId")
B fromClassA(A a);
@AfterMapping
default void fillAinB(@MappingTarget B target, A source) {
b.setA(source);
}
答案 1 :(得分:1)
进行映射的最佳方法是在 @Mapping
中定义它。
例如
@Mapping(source="id", target="bId")
@Mapping(target = "a", source="a")
B fromClassA(A a);
您可以在 Mapping#source