【发布时间】:2021-10-30 00:54:26
【问题描述】:
我不是在问“如何验证枚举”。
假设我有这样的请求正文:
public class VerifyAccountRequest {
@Email(message = "2")
private String email;
}
我想做什么,而不是硬编码的方式,我只想从枚举类返回消息的值。但 IDEA 是说“属性值必须是常量”
public enum MyEnum {
EMAIL("2", "info"),
public String messageCode;
public String info;
}
public class VerifyAccountRequest {
@Email(message = MyEnum.Email.code) // NOT_WORKING
private String email;
}
我也可以在界面中定义“2”,但我不想那样做:
public interface MyConstant {
String EMAIL = "2";
}
public class VerifyAccountRequest {
@Email(message = MyConstant.EMAIL) // WORKS, BUT I HAVE TO USE ENUM !!!
private String email;
}
是否可以使用枚举类返回消息值?
【问题讨论】:
-
@HarryCoder,这实际上是解决问题的方法。但至少,我将能够在我的代码中使用一个事实来源,而不是重复。谢谢我现在正在使用这个解决方案
标签: java spring-boot spring-validator