MySQL DECIMAL(x,y)
列に@Size
アノテーションを使用するにはどうすればよいですか?
BigDecimal
を使用していますが、@Size
max
を含めようとしても機能しません。これが私のコードです:
@Size(max = 7,2)
@Column(name = "weight")
private BigDecimal weight;
Hibernate Validatorを直接使用し、次のように @ Digits でフィールドに注釈を付けることができます。
@Digits(integer=5, fraction=2)
@Column(name = "weight")
private BigDecimal weight;
参照 この答え
@Column(nullable= false, precision=7, scale=2) // Creates the database field with this size.
@Digits(integer=9, fraction=2) // Validates data when used as a form
private BigDecimal myField;
@Column(columnDefinition = "DECIMAL(7,2)")
検証方法を尋ねる場合は、@ Minおよび@Maxアノテーション、または@DecimalMinおよび@DecimalMaxアノテーションを使用する必要があります。
@Sizeは、列を定義するのではなく、プロパティを検証するために使用される注釈です。 @Sizeは通常、文字列またはコレクションが特定のサイズであることを保証するために使用されます。