Assert断言工具类,通常用于数据合法性检查,在JAVA编程中,通常会编写如下代码:
if (name == null || name.equls("")) {
逻辑处理
}
在所有方法中都使用手工检测合法性的方式并不是太好,因为这样影响了代码的可读性,
若使用Assert工具类上面的代码可以简化为:
Assert.hasText((name, "参数错误!");
这样可以大大增强代码的可读性,介绍一下Assert 类中的常用断言方法:
notNull(Object object, "object is required") - 对象非空 3hf
isTrue(Object object, "object must be true") - 对象必须为true
notEmpty(Collection collection, "collection must not be empty") - 集合非空
hasLength(String text, "text must be specified") - 字符不为null且字符长度不为0
hasText(String text, "text must not be empty") - text 不为null且必须至少包含一个非空格的字符
isInstanceOf(Class clazz, Object obj, "clazz must be of type [clazz]") - obj必须能被正确造型成为clazz 指定的类
只记录这么多,具体自己去找spring的工具类(import org.springframework.util.Assert)
留下个API地址,需要的自己去查阅API http://www.apihome.cn/api/spring/Assert.html
Assert类具体实现部分:
/** * @deprecated as of 4.3.7, in favor of {@link #doesNotContain(String, String, String)} */ @Deprecated public static void doesNotContain(String textToSearch, String substring) { doesNotContain(textToSearch, substring, "[Assertion failed] - this String argument must not contain the substring [" + substring + "]"); } /** * Assert that an array contains elements; that is, it must not be * {@code null} and must contain at least one element. * <pre class="code">Assert.notEmpty(array, "The array must contain elements");</pre> * @param array the array to check * @param message the exception message to use if the assertion fails * @throws IllegalArgumentException if the object array is {@code null} or contains no elements */ public static void notEmpty(Object[] array, String message) { if (ObjectUtils.isEmpty(array)) { throw new IllegalArgumentException(message); } }