[英]How can I map an enum to a boolean with mapstruct?
我有一些自動生成的枚舉,需要將其映射到MapStruct映射器中的布爾值。 他們像這樣去:
enum YN {
Y("Y"), N("N")
}
enum ZO {
_0("0"), _1("1")
}
我嘗試使用@ValueMappings(),但沒有成功:
@ValueMappings({
@ValueMapping(source="Y", target=true),
@ValueMapping(source="N", target=false)
)
Boolean map(YN value);
如何實現此映射?
ValueMappings用於兩個Enum
之間的映射。 您不能使用它們將Enum
映射到其他對象。 對於定義的映射,您將必須自己編寫一個映射。 然后MapStruct可以在其他映射器中使用該映射器。
abstract class Mapper {
Boolean map(YN value) {
return YN.Y.equals(value);
}
Boolean map(ZO value) {
return ZO.O.equals(value);
}
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.