簡體   English   中英

可以為 FLOAT 的約束“javax.validation.constraints.Size”找到節點驗證器

[英]Node validator could be found for constraints 'javax.validation.constraints.Size' for FLOAT

發布此內容是因為我還沒有看到有關此問題的 FLOAT 類型的帖子。

No validator could be found for constraint 'javax.validation.constraints.Size' validating type 'java.lang.Float'. Check configuration for 'numIngredient'

如何更改約束以申請 FLOAT 類型?

@Data
@Entity
@Table(name = "pantry")
public class Pantry {
    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    @Column(name = "id")
    private Long id;

    @Column(name = "userID", nullable = false)
    private Long userID;

    @Column(name = "ingredients_in_pantry", nullable = true)
    private String ingredientID;

    @NotNull
    @Column(name = "number_of_ingredients", nullable = true)
    private Float numIngredient;

    //description of pantry (home, office, kitchen, grandmas, etc.)
    @Column(name = "description", nullable = true)
    private String description;

}

javadoc - CharSequence、Collections、地圖、 @Size支持 @Size。 數字類型( @Min 、@ @Max等)的注釋不支持 double 和 float,因為舍入錯誤,引用 javadoc - Note that double and float are not supported due to rounding errors (some providers might provide some approximative support). 根據您的提供商,它們可能有效,也可能無效。

您的選擇是:

  1. 使用BigDecimal - 用於驗證數字的注釋支持它。
  2. 為 double 和 float 編寫您自己的自定義注釋和驗證器 - 如果您不知道如何使用,可以使用本指南

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM