我有这个枚举:
@Getter
public enum Error
{
EMAIL( "Invalid email" ),
GROUP( "Invalid group" ),
NONE( "" );
private final String errorMessage;
Error( String errorMessage )
{
this.errorMessage = errorMessage;
}
}
我有这门课:
@Value
public class User {
private Error error;
}
我有一个映射器:
@Mapper
public interface UserModelToUser
{
User map( UserModel userModel );
}
我的想法是使用枚举 Error.NONE 的值初始化错误,但我不知道如何使用
@Mapping
或其他方式来实现这一点。
枚举和类位于不同的包中,否则我可以使用这样的东西:
@Mapping( target = "error", expression = "java( Error.NONE )" )
我无法搬出那个包裹。
谢谢
您只需写下枚举的全名即可。 例如:
@Mapping( target = "error", expression = "java( com.somepackage.somesubpackage.Error.NONE )" )
User map(UserModel userModel );
这对我也有效。非常感谢!