1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
| public void check(Object o) throws IllegalAccessException { for (Field field : o.getClass().getDeclaredFields()) { Range range = field.getAnnotation(Range.class); if (range != null) { field.setAccessible(true); Object value = field.get(o); if (value instanceof String) { if (((String) value).length() < range.min() || ((String) value).length() > range.max()) { throw new IllegalArgumentException("参数长度不符:" + field.getName() + "长度是:" + (((String) value).length())); } } if (value instanceof Integer) { if ((Integer) value < range.min() || (Integer) value > range.max()) { throw new IllegalArgumentException("参数值不符:" + field.getName() + "值大小为:" + ((Integer) value)); } } } } }
|