簡體   English   中英

isValid拋出的異常 - hibernate驗證器

[英]exception thrown in isValid - hibernate validator

驗證某些配置時,我使用自定義驗證器從application.yml加載,如下所示:

public class MyValidator implements ConstraintValidator<MyAnnotation, List<MyClass>> {

        @Override
        public void initialize(MyAnnotation myAnnotation) {
            //nothing to do
        }

        @Override
        public boolean isValid(List<MyClass> myList, ConstraintValidatorContext context) {
           // validation logic
        }
    }

如果驗證邏輯觸發異常,例如在空指向的情況下,我注意到其他可能的驗證器沒有啟動,並且顯示錯誤消息,其中讀取類似於綁定錯誤的消息。

避免這種情況的最佳做法是什么?

因此,使用Hibernate Validator的驗證器的一般最佳實踐是他們應該將null條目視為有效。

如果你檢查我們在Hibernate Validator中提供的那些,它們對於null條目都返回true。 想要在檢查null時明確使用@NotNull

有一些例外,例如@NotBlank但這是一般的最佳實踐。

顯然,如上所述,您的代碼需要正確並避免NPE或其他異常。 但這不言而喻。

暫無
暫無

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

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