Digits class
A constraint that limits how many digits a number has before and after the decimal point.
Use it when the value must fit a fixed-point column or format, such as
amounts with at most 6 integer and 2 fraction digits. Numbers and
BigInts are counted without trailing zeros (1.50 has one fraction
digit, 1000 four integer digits); numeric strings as written ('1.50'
has two, like new BigDecimal("1.50")), and a string that is not a
number fails. null passes. The arguments of a field error are
[field, fraction, integer]. On a value that is not a number or string
the generator fails the build and the validator throws an
UnexpectedTypeException, as Hibernate Validator does.
// Up to 999999.99, as in a DECIMAL(8, 2) column.
@Introspected()
class Invoice {
@Digits(integer: 6, fraction: 2)
double total = 0;
}
Spring (Java):
class Invoice {
@Digits(integer = 6, fraction = 2)
private BigDecimal total;
}
- Inheritance
-
- Object
- Constraint
- Digits
Constructors
Properties
-
attributes
→ Map<
String, Object?> -
The settings of the constraint by name, such as
{'max': 20, 'min': 0}: they fill the{max}placeholders of messages and, sorted by name, become the arguments{1},{2}, ... of field errors. Empty by default; override it when a custom constraint has settings.no setteroverride - defaultMessage → String
-
The text of a violation when message is not set, with the same
placeholders, such as
size must be between {min} and {max}.no setteroverride - fraction → int
-
The most digits allowed after the decimal point;
0allows whole numbers only. Must not be negative.final -
groups
→ List<
Type> -
The validation groups the constraint belongs to, such as
[OnUpdate]; it is only checked when one of them is asked for. Empty means Default.finalinherited - hashCode → int
-
The hash code for this object.
no setterinherited
- integer → int
-
The most digits allowed before the decimal point; must not be
negative.
final
- message → String?
-
The text of a violation instead of defaultMessage;
nullkeeps the default.finalinherited - name → String
-
The error code of a violation, such as
NotBlank: the start of the message codes (NotBlank.signup.name, ...,NotBlank) and the Jakarta name of the constraint. Custom constraints usually return their class name.no setteroverride - runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
Methods
-
appliesTo(
List< Type> requested) → bool -
Whether the constraint is checked when a validation asks for the
requestedgroups: when one of its groups is requested.inherited -
checkParameters(
) → void -
Throws a ConstraintDeclarationException when the constraint's own
settings are invalid:
Size(min: -1),min > max, a malformed regular expression. Does nothing by default.override -
interpolate(
String template) → String -
templatewith its{attribute}placeholders replaced by the values of attributes; other placeholders and${...}expressions stay, and the escapes\{,\},\$,\\become the literal characters.inherited -
interpolatedMessage(
) → String -
message, or defaultMessage, with the
{attribute}placeholders filled in; message keys and${...}expressions stay, since only the validator can resolve them.inherited -
isValid(
Object? value) → bool -
Whether
valuesatisfies the constraint; the method a custom constraint implements.override -
isValidWithContext(
Object? value, ConstraintValidatorContext context) → bool -
Whether
valuesatisfies the constraint, with access to the validationcontext; the methodBeanValidatorcalls. By default it returns isValid.inherited -
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
supports(
Object value) → bool -
Whether the constraint can check a value of this type at all;
valueis nevernull.@Sizesupports strings, collections and maps, not anint.override -
toString(
) → String -
A string representation of this object.
inherited
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited