类 Assert
- java.lang.Object
- org.springframework.util.Assert
public abstract class Assert extends Object
Assertion utility class that assists in validating arguments.Useful for identifying programmer errors early and clearly at runtime.
For example, if the contract of a public method states it does not allow
null
arguments,Assert
can be used to validate that contract. Doing this clearly indicates a contract violation when it occurs and protects the class's invariants.Typically used to validate method arguments rather than configuration properties, to check for cases that are usually programmer errors rather than configuration errors. In contrast to configuration initialization code, there is usually no point in falling back to defaults in such methods.
This class is similar to JUnit's assertion library. If an argument value is deemed invalid, an
IllegalArgumentException
is thrown (typically). For example:Assert.notNull(clazz, "The class must not be null"); Assert.isTrue(i > 0, "The value must be greater than zero");
Mainly for internal use within the framework; consider Apache's Commons Lang for a more comprehensive suite of
String
utilities.- 从以下版本开始:
- 1.1.2
- 作者:
- Keith Donald, Juergen Hoeller, Sam Brannen, Colin Sampaleanu, Rob Harrop
构造器概要
构造器 构造器 说明 Assert()
方法概要
所有方法 静态方法 具体方法 已过时的方法 修饰符和类型 方法 说明 static void
doesNotContain(String textToSearch, String substring)
已过时。as of 4.3.7, in favor ofdoesNotContain(String, String, String)
static void
doesNotContain(String textToSearch, String substring, String message)
Assert that the given text does not contain the given substring.static void
hasLength(String text)
已过时。as of 4.3.7, in favor ofhasLength(String, String)
static void
hasLength(String text, String message)
Assert that the given String is not empty; that is, it must not benull
and not the empty String.static void
hasText(String text)
已过时。as of 4.3.7, in favor ofhasText(String, String)
static void
hasText(String text, String message)
Assert that the given String contains valid text content; that is, it must not benull
and must contain at least one non-whitespace character.static void
isAssignable(Class<?> superType, Class<?> subType)
Assert thatsuperType.isAssignableFrom(subType)
istrue
.static void
isAssignable(Class<?> superType, Class<?> subType, String message)
Assert thatsuperType.isAssignableFrom(subType)
istrue
.static void
isInstanceOf(Class<?> type, Object obj)
Assert that the provided object is an instance of the provided class.static void
isInstanceOf(Class<?> type, Object obj, String message)
Assert that the provided object is an instance of the provided class.static void
isNull(Object object)
已过时。as of 4.3.7, in favor ofisNull(Object, String)
static void
isNull(Object object, String message)
Assert that an object isnull
.static void
isTrue(boolean expression)
已过时。as of 4.3.7, in favor ofisTrue(boolean, String)
static void
isTrue(boolean expression, String message)
Assert a boolean expression, throwing anIllegalArgumentException
if the expression evaluates tofalse
.static void
noNullElements(Object[] array)
已过时。as of 4.3.7, in favor ofnoNullElements(Object[], String)
static void
noNullElements(Object[] array, String message)
Assert that an array contains nonull
elements.static void
notEmpty(Object[] array)
已过时。as of 4.3.7, in favor ofnotEmpty(Object[], String)
static void
notEmpty(Object[] array, String message)
Assert that an array contains elements; that is, it must not benull
and must contain at least one element.static void
notEmpty(Collection<?> collection)
已过时。as of 4.3.7, in favor ofnotEmpty(Collection, String)
static void
notEmpty(Collection<?> collection, String message)
Assert that a collection contains elements; that is, it must not benull
and must contain at least one element.static void
notEmpty(Map<?,?> map)
已过时。as of 4.3.7, in favor ofnotEmpty(Map, String)
static void
notEmpty(Map<?,?> map, String message)
Assert that a Map contains entries; that is, it must not benull
and must contain at least one entry.static void
notNull(Object object)
已过时。as of 4.3.7, in favor ofnotNull(Object, String)
static void
notNull(Object object, String message)
Assert that an object is notnull
.static void
state(boolean expression)
已过时。as of 4.3.7, in favor ofstate(boolean, String)
static void
state(boolean expression, String message)
Assert a boolean expression, throwing anIllegalStateException
if the expression evaluates tofalse
.
构造器详细资料
Assert
public Assert()
方法详细资料
state
public static void state(boolean expression, String message)
Assert a boolean expression, throwing anIllegalStateException
if the expression evaluates tofalse
.Call
isTrue(boolean, java.lang.String)
if you wish to throw anIllegalArgumentException
on an assertion failure.Assert.state(id == null, "The id property must not already be initialized");
- 参数:
expression
- a boolean expressionmessage
- the exception message to use if the assertion fails- 抛出:
IllegalStateException
- ifexpression
isfalse
state
@Deprecated public static void state(boolean expression)
已过时。as of 4.3.7, in favor ofstate(boolean, String)
isTrue
public static void isTrue(boolean expression, String message)
Assert a boolean expression, throwing anIllegalArgumentException
if the expression evaluates tofalse
.Assert.isTrue(i > 0, "The value must be greater than zero");
- 参数:
expression
- a boolean expressionmessage
- the exception message to use if the assertion fails- 抛出:
IllegalArgumentException
- ifexpression
isfalse
isTrue
@Deprecated public static void isTrue(boolean expression)
已过时。as of 4.3.7, in favor ofisTrue(boolean, String)
isNull
public static void isNull(Object object, String message)
Assert that an object isnull
.Assert.isNull(value, "The value must be null");
- 参数:
object
- the object to checkmessage
- the exception message to use if the assertion fails- 抛出:
IllegalArgumentException
- if the object is notnull
isNull
@Deprecated public static void isNull(Object object)
已过时。as of 4.3.7, in favor ofisNull(Object, String)
notNull
public static void notNull(Object object, String message)
Assert that an object is notnull
.Assert.notNull(clazz, "The class must not be null");
- 参数:
object
- the object to checkmessage
- the exception message to use if the assertion fails- 抛出:
IllegalArgumentException
- if the object isnull
notNull
@Deprecated public static void notNull(Object object)
已过时。as of 4.3.7, in favor ofnotNull(Object, String)
hasLength
public static void hasLength(String text, String message)
Assert that the given String is not empty; that is, it must not benull
and not the empty String.Assert.hasLength(name, "Name must not be empty");
- 参数:
text
- the String to checkmessage
- the exception message to use if the assertion fails- 抛出:
IllegalArgumentException
- if the text is empty- 另请参阅:
StringUtils.hasLength(java.lang.CharSequence)
hasLength
@Deprecated public static void hasLength(String text)
已过时。as of 4.3.7, in favor ofhasLength(String, String)
hasText
public static void hasText(String text, String message)
Assert that the given String contains valid text content; that is, it must not benull
and must contain at least one non-whitespace character.Assert.hasText(name, "'name' must not be empty");
- 参数:
text
- the String to checkmessage
- the exception message to use if the assertion fails- 抛出:
IllegalArgumentException
- if the text does not contain valid text content- 另请参阅:
StringUtils.hasText(java.lang.CharSequence)
hasText
@Deprecated public static void hasText(String text)
已过时。as of 4.3.7, in favor ofhasText(String, String)
doesNotContain
public static void doesNotContain(String textToSearch, String substring, String message)
Assert that the given text does not contain the given substring.Assert.doesNotContain(name, "rod", "Name must not contain 'rod'");
- 参数:
textToSearch
- the text to searchsubstring
- the substring to find within the textmessage
- the exception message to use if the assertion fails- 抛出:
IllegalArgumentException
- if the text contains the substring
doesNotContain
@Deprecated public static void doesNotContain(String textToSearch, String substring)
已过时。as of 4.3.7, in favor ofdoesNotContain(String, String, String)
notEmpty
public static void notEmpty(Object[] array, String message)
Assert that an array contains elements; that is, it must not benull
and must contain at least one element.Assert.notEmpty(array, "The array must contain elements");
- 参数:
array
- the array to checkmessage
- the exception message to use if the assertion fails- 抛出:
IllegalArgumentException
- if the object array isnull
or contains no elements
notEmpty
@Deprecated public static void notEmpty(Object[] array)
已过时。as of 4.3.7, in favor ofnotEmpty(Object[], String)
noNullElements
public static void noNullElements(Object[] array, String message)
Assert that an array contains nonull
elements.Note: Does not complain if the array is empty!
Assert.noNullElements(array, "The array must contain non-null elements");
- 参数:
array
- the array to checkmessage
- the exception message to use if the assertion fails- 抛出:
IllegalArgumentException
- if the object array contains anull
element
noNullElements
@Deprecated public static void noNullElements(Object[] array)
已过时。as of 4.3.7, in favor ofnoNullElements(Object[], String)
notEmpty
public static void notEmpty(Collection<?> collection, String message)
Assert that a collection contains elements; that is, it must not benull
and must contain at least one element.Assert.notEmpty(collection, "Collection must contain elements");
- 参数:
collection
- the collection to checkmessage
- the exception message to use if the assertion fails- 抛出:
IllegalArgumentException
- if the collection isnull
or contains no elements
notEmpty
@Deprecated public static void notEmpty(Collection<?> collection)
已过时。as of 4.3.7, in favor ofnotEmpty(Collection, String)
notEmpty
public static void notEmpty(Map<?,?> map, String message)
Assert that a Map contains entries; that is, it must not benull
and must contain at least one entry.Assert.notEmpty(map, "Map must contain entries");
- 参数:
map
- the map to checkmessage
- the exception message to use if the assertion fails- 抛出:
IllegalArgumentException
- if the map isnull
or contains no entries
notEmpty
@Deprecated public static void notEmpty(Map<?,?> map)
已过时。as of 4.3.7, in favor ofnotEmpty(Map, String)
isInstanceOf
public static void isInstanceOf(Class<?> type, Object obj, String message)
Assert that the provided object is an instance of the provided class.Assert.instanceOf(Foo.class, foo, "Foo expected");
- 参数:
type
- the type to check againstobj
- the object to checkmessage
- a message which will be prepended to provide further context. If it is empty or ends in ":" or ";" or "," or ".", a full exception message will be appended. If it ends in a space, the name of the offending object's type will be appended. In any other case, a ":" with a space and the name of the offending object's type will be appended.- 抛出:
IllegalArgumentException
- if the object is not an instance of type
isInstanceOf
public static void isInstanceOf(Class<?> type, Object obj)
Assert that the provided object is an instance of the provided class.Assert.instanceOf(Foo.class, foo);
- 参数:
type
- the type to check againstobj
- the object to check- 抛出:
IllegalArgumentException
- if the object is not an instance of type
isAssignable
public static void isAssignable(Class<?> superType, Class<?> subType, String message)
Assert thatsuperType.isAssignableFrom(subType)
istrue
.Assert.isAssignable(Number.class, myClass, "Number expected");
- 参数:
superType
- the super type to check againstsubType
- the sub type to checkmessage
- a message which will be prepended to provide further context. If it is empty or ends in ":" or ";" or "," or ".", a full exception message will be appended. If it ends in a space, the name of the offending sub type will be appended. In any other case, a ":" with a space and the name of the offending sub type will be appended.- 抛出:
IllegalArgumentException
- if the classes are not assignable
isAssignable
public static void isAssignable(Class<?> superType, Class<?> subType)
Assert thatsuperType.isAssignableFrom(subType)
istrue
.Assert.isAssignable(Number.class, myClass);
- 参数:
superType
- the super type to checksubType
- the sub type to check- 抛出:
IllegalArgumentException
- if the classes are not assignable