首先找到出错的语句
一般是保存或更新操作,例如:
persist();
加上一个try语句包围
try {
persist();
} catch (InvalidStateException v) {
InvalidValue[] invalid = v.getInvalidValues();
for (int i=0; i<invalid.length; ++i) {
InvalidValue bad = invalid[i];
System.out.println("===========================================");
System.out.println("insert(), " + bad.getPropertyPath() + ":" + bad.getPropertyName() + ":" + bad.getMessage());
}
throw v;
}
这样就能在屏幕上打印出来到底出错的地方是哪里
通常都是加载entity类上的验证注释使用不当