【发布时间】:2015-04-07 12:10:06
【问题描述】:
如果出现string,那么这些验证是不够的。
import play.data.validation.Constraints.Max;
import play.data.validation.Constraints.Min;
import play.data.validation.Constraints.Required;
@Required
@Min(1)
@Max(500)
private Integer capacity;
我是如何检查的
Set<ConstraintViolation<Object>> violations = (Set) play.data.validation.Validation.getValidator().validate(object, Default.class);
for (ConstraintViolation<Object> violation : violations) {
System.out.println(violation.getPropertyPath().iterator().next().getName());
System.out.println(violation.getMessageTemplate());
}
反对用户发送"govind" 代替整数值然后它给出执行异常
有没有办法通过@annotaions进行检查?
或任何其他建议的方式? 我收到错误
play.api.Application$$anon$1: 执行异常[[RuntimeException: com.fasterx ml.jackson.databind.exc.InvalidFormatException:不能 从字符串值“govind”构造 in t 的实例:不是有效的整数 价值
【问题讨论】:
-
认为您可以选择使用 pattern(java.lang.String regex) 方法来找出它的字符串还是完全整数。请查看此网址了解更多信息:playframework.com/documentation/2.0/api/java/play/data/…
标签: java validation playframework annotations integer